TLDR; I have to force P0 state consistently through driver opt or everything gets very janky when the P state changes to P8 (and will not change unless load is very high). The result is external outputs are very shoddy.
The effect can be seen easily enough using vkcube-wayland. This starts off nice and fast, smooth, but then progressively slows right down. Watching the P state, you can see it correlates to that. Once in P8 it doesn’t ramp back up.
It’s a good question because I’m using nvidia-smi to check and I wonder if maybe that is also impacting the p-state. I don’t think it is because a watcgh on it while doing __NV_PRIME_RENDER_OFFLOAD=1 vkcube --present_mode 2 shows it bouncing between P8, P5, P4, P0.
But __NV_PRIME_RENDER_OFFLOAD=1 vkcube --present_mode 0 shows P0 and it stays smooth (and fast).
Additionally to this:
game + no v-sync + FPS over refresh rate = smooth
game + no v-sync + FPS under refresh rate = stutters every few seconds (p-state change?)
game + v-sync + FPS over refresh rate = smooth
game + v-sync + FPS under refresh rate = smooth (and possible input lag?)
where game is say Quake II RTX (rtx vs opengl renderers), and Cyberpunk 2070