I've heard several times people saying that switching between draw & compute shading often can "be bad for gpu performance". That there would be some kind of penalty as the CUs had to do some kind of switching. I've had problems finding info confirming this claim? Is it true or BS, and if true what kind of overhead are we talking? (From what I read AMD don't have such limits but I'm unsure for nvidia)
Does mixing dispatch & draw cause any overhead cost?
If you use DX12 with commmand queues and use fences I dont know thats its a particular problem. Note this though:
- Don’t toggle between compute and graphics on the same command queue more than absolutely necessary
- This is still a heavyweight switch to make
From https://developer.nvidia.com/dx12-dos-and-donts. Perhaps that is what you are meaning?
If you mean DX 11, please say.
Switching between compute and graphics on Nvidia hardware will cause a "wait for idle" since they won't do both simultaneously unless you use multiple command queues. Whether or not that actually matters for your performance depends on what you're doing. If you're already requiring some kind of barrier/sync/flush between your draws and dispatched, then it probably won't matter.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement