2016-09-02 17 views
0

내 컴퓨터 (2x NVS 315)에 2 개의 별도 그래픽 카드가 있고 3 개의 모니터가 부착되어 있습니다 (한 카드에는 2 개의 모니터, 다른 카드에는 1 개의 모니터).PixiJS와의 WebGL 및 GPU 친 화도

PixiJS 코드가 여러 브라우저 창에서 나란히 실행될 때 얼마나 잘 작동하는지 보려면 각 모니터에 하나의 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 어떤 방법이 있나요 :

나는 여기에이 문제의 가능한 설명을했다?

답변

1

내가 아는 한 멀지 않습니다.

GPU를 전환하는 앱이 거의 없습니다. 거의 모든 사람들이 기본 GPU를 사용합니다 (기본/처음). 렌더링은 해당 GPU에서 발생하고 결과는 다른 GPU로 전송되어 화면에 표시 될 수 있습니다. Microsoft는 어느 화면이 대부분 화면에 있는지 확인하면서 GPU를 전환하는 방법에 대한 몇 가지 예를 알고 있지만 사용하는 앱은 거의 없습니다. 기껏해야, 전체 화면으로 이동하는 일부 게임은 각 화면에 올바른 GPU를 사용합니다.