XR.WaitForGPU worse performance on windows 10 vs 7?

I’ve been working on a VR game for the last few months and had it running pretty consistently at 80fps when standing still on my Windows 7 machine, using an NVIDIA GeForce 2070 card.

I recently updated the windows install to 10 and now the game is running at literally half the fps it was before, in the 40fps range when standing still. None of the hardware has changed, nor have I made any changes to unity.

The profiler seems to show the XR.WaitForGPU process taking 8-12ms per frame every frame, and that’s almost half the entire frame time, if not more. Trying to understand why perf is suddenly so bad and why XR.WaitForGPU has suddenly started popping up as a slow process. I don’t recall seeing it in the profiler before, though I assume it was always there, just much lower on the ms time so it wasn’t brought to my attention.

So far I’ve seen this thread https://forum.unity.com/threads/steamvr-htc-vive-weird-fps-issue.426904/ and updated to the latest version of the SteamVR Plugin in case that contained a fix, but I didn’t see any difference.

I’ve also double checked this behavior in a stand alone build with profiling enabled and saw the same beavhior with XR.WaitForGPU being the cause there as well.

So yeah… any clues on where to start looking to resolve this? I know its a pretty weird problem to have, but performance is everything in VR. Running at anything less than 60 is basically a project killer. :frowning:

Ah ok solved it. Back when I was on Windows 7, through trial and error I found that setting the cameras to Deferred Rendering resulted in the highest frame rate.

Now on windows 10, I need to set it to Forward Rendering for the highest framerate.

No idea why that would change between Windows 7 and Windows 10 though. So if anyone can explain why this solves the issue, that would be great O_o