【问题标题】:WebGL and GPU affinity with PixiJSWebGL 和 GPU 与 PixiJS 的亲和力
【发布时间】:2017-01-10 15:43:07
【问题描述】:

我的机器上有两个独立的显卡 (2x NVS 315) 和连接到它们的三台显示器(一张卡上有 2 台显示器,另一张卡上有 1 台显示器)。

为了查看我的 PixiJS 代码在多个浏览器窗口上并排运行时的性能,我在每个监视器中打开了一个 Chrome 窗口。

令我惊讶的是,处理我的主屏幕的 GPU (GPU#1) 完成了大部分工作(实际上是 100% 的使用率),而另一个 GPU (GPU#2) 的使用率保持在 40% 左右。即使我只在连接到 GPU#2 的显示器上运行浏览器窗口后,这仍然是正确的。 我的期望是,当连接到它的监视器上呈现浏览器窗口时,GPU #2 将完成所有工作。显然情况并非如此,GPU#1 的使用率为 70%,而 GPU#2 的使用率为 40%。

说实话,我很确定这不是 PixiJS 的问题,而是 Chrome/WebGL/OpenGL 的问题。

然后,我对在窗口模式和全屏模式下运行的其他 OpenGL 游戏进行了一些实验,并看到了相同的行为。与主屏幕关联的 GPU 似乎总是完成大部分工作。

我在这里看到了对这种行为的可能解释:https://superuser.com/questions/731852/how-is-gpu-affinity-decided-in-a-multi-gpu-configuration#comment939363_731852

WebGL/PixiJS 中有什么方法可以指定 GPU 亲和性吗?

【问题讨论】:

    标签: google-chrome gpu webgl chromium pixi.js


    【解决方案1】:

    据我所知没有。

    很少有应用切换 GPU。几乎所有这些都只使用主 GPU(如默认/第一个)。在该 GPU 上进行渲染,然后将结果传输到另一个 GPU,以便将它们放在屏幕上。微软有几个例子来说明如何通过检查窗口主要在哪个屏幕上来切换 GPU,但我所知道的应用程序很少使用它。充其量,一些全屏游戏会为每个屏幕使用正确的 GPU。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-08-19
      • 2016-05-31
      • 1970-01-01
      • 2019-07-10
      • 1970-01-01
      • 1970-01-01
      • 2015-10-28
      相关资源
      最近更新 更多