私のマシンに2つの別個のグラフィックスカード(2x NVS 315)と3つのモニターが接続されています(1つのカードで2つのモニター、もう一方のカードでは1つのモニター)。PixiJSとのWebGLとGPUの親和
私のPixiJSコードが複数のブラウザウィンドウ上で並行して実行されているときのパフォーマンスを確認するために、私は各モニタに1つのChromeウィンドウを開きました。
私の驚いたことに、プライマリスクリーン(GPU#1)を処理しているGPUは、他のGPU(GPU#2)が約40%の使用率を保ちながら、ほとんどの作業(実際には100%の使用)を行っていました。これは、GPU#2に接続されたモニタ上でのみブラウザウィンドウを実行しても、まだ当てはまりました。 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
は、GPUの親和性を指定するためのWebGL/PixiJSのいずれかの方法はありますか?