I'm trying to better understand the Oculus Debug tool metrics while benchmarking Elite Dangerous. With a i7-2600K (@2.0, 3.0, 4.5 GHz), 16GB RAM, and an OC 980Ti in hand, here are questions I have about the Oculus Debug Tool:
- The FPS seems just as consistent on the 2600K @ 3.0 GHz as it is at 4.5 GHz. When I drop the CPU to 2.0 GHz, then the "CPU App Render time" goes over 11.1ms and I can see measurable FPS dips below 90 fps. *Is any CPU render time under 11.1ms (target for 90fps) "good enough" then or would there be some drawback to a CPU render time of 6.0 ms vs 3.0 ms?
- The GPU utilization never hits 100% (some peaks at 96% depending on settings). I assume FPS is capped at 90fps with Oculus? (and therefore if you hit 100% utilization on the GPU you'd be dropping below 90 fps and losing performance).
- Even without 100% GPU utilization, and a CPU render time in the 3-4ms range, I still see occasional FPS dips into the 80s at time with the Oculus Debug Tool. What else can I look at to see why I'm not locking onto 90 fps?. I've raised and lowered settings graphically in the game (VR Low, VR High) and the same dips occur. The dips are only larger when I drop CPU clock speed all the way to 2.0 GHz.
I dont believe you will ever "lock onto 90 fps" unless there is some rendering mechanism that will reduce effect quality to maintain a target framerate in place.
Electryic - even if there is still GPU and CPU power available? or maybe there are spikes of full utilization that are momentary enough that they aren't showing?
Sorry to bump my own post - any other ideas info here? Is there some kind of performance whitepaper available for what the debug tool is telling us and what's considered optimal?
For the dips, if those happen when you know the software can manage 90fps normally then those are thanks to Windows not having a real-time priority setting for, well, anything in userspace. Whenever Windows goes off to do something else you can lose frames because it's doing an AV scan instead of reading in textures from disk to GFX card, or spiking the CPU by decompressing Windows Update files.
You can partly mitigate that sort of thing by going SSD (preferably PCIe or M.2 SSD, rather than plain SATA3), but without operating system support for real-time there's only so much you can do by throwing extra resource and speed at the problem.
For the other stuff I'd be guessing, but I'd guess the same as you have.