VulkanSceneGraph icon indicating copy to clipboard operation
VulkanSceneGraph copied to clipboard

Headless rendering much slower on AMD GPUs? (30x slower)

Open drywolf opened this issue 1 month ago • 17 comments

Describe the bug I am using VSG to perform some headless rendering (i.e. no Swapchain and no vsg::Window) The code that I am using is very similar to vsgheadless.cpp from the vsgExamples.

  • when I am running the code on Windows (10) with a NV RTX 2080 TI I am getting ca. 13.000 FPS
  • when I am running the same executable on Windows (11) with with an AMD RX 5700 XT I am getting just ca. 390 FPS
    • ~30 times slower when compared to the RTX 2080

Also when looking at the Windows Task-Manager GPU performance metrics, there is an interesting difference between the two GPUs:

  • the AMD "Copy" queue is showing heavy load while running the code (see ~64% Copy in the screenshot)
  • the NV "Copy" queue is pretty much idle while running the same code (see ~0% Copy in the screenshot)

AMD RX 5700 XT

NV RTX 2080 TI


I already tried to do some profiling on the AMD to find out what is happening, but all of the AMD profiling tools are failing to function. This is the minimal code to reproduce what I showed above: https://gist.github.com/drywolf/690c775bb181c946b30ed67ebcdee3de

PS: the minimal code does not render anything, it only contains a single RenderPass that would implicitly clear the color & depth-stencil images, but that is all the code is doing. So it is quite surprising to see the low FPS / high Copy load on the AMD card, for such a trivial minimal workload.

drywolf avatar Jun 04 '24 18:06 drywolf