4

The documentation for IDXGIDevice::SetGPUThreadPriority states

To use the SetGPUThreadPriority method, you should have a comprehensive understanding of GPU scheduling. You should profile your application to ensure that it behaves as intended. If used inappropriately, the SetGPUThreadPriority method can impede rendering speed and result in a poor user experience.

Yet, it does not elaborate on how to gain the so called "comprehensive understanding" of GPU scheduling, and how exactly does it affect each thread that communicates with the GPU.

Here are some other specific questions:

  • On what scenarios SetGPUThreadPriority might be beneficial?
  • Does it affect GPU scheduling in general for the invoking thread or is it specific to Direct3D 11 / 12? (I mean, does it have any effect on other APIs that share the GPU such as Vulkan, OpenGL, CUDA, OpenCL?)
  • Which OS component / driver does it communicate with?
  • How it affects other processes?
Acorn
  • 24,970
  • 5
  • 40
  • 69
Elad Maimoni
  • 3,703
  • 3
  • 20
  • 37

0 Answers0