Unexpected CPU usage with Vsync

Master&Puppet

New member
For a while now I've been running games with Vsync on which has two positive effects. Firstly it smooths out gameplay on my xf setup (occasional micro stutters and screen tears). Secondly it reduces the workload on my GPUs since as soon as they produce 60fps they can pull back off the throttle.

There was a question in the back of my mind though - what happens to CPU usage? Having had a look around the interwebs I hadn't got an answer. Mostly it looked like CPU usage would increase (at least with certain Nvidia cards) to manage the FPS but it was not definitive. For a start I'm running AMD GPUs but I also wondered whether the CPU would throttle too if it didn't need to support higher frame rates. So I ran a quick test using Unigine's benchmark:

itVYu.jpg

CPU use actually decreased with vsync on and at times it was significantly less.

In terms of relationships with vsync off it was exactly as expected. As the Graphical load decreased in certain scenes the FPS would increase and the CPU had to do more work to keep up. That's a similar relationship to what happens when lower resolutions and graphics settings are used - the CPU becomes more important in producing FPS.

With vsync on the opposite happened. As the graphics load got lighter the GPUs backed off the throttle to hold 60fps and as a result the CPU didn't have to work any harder to support higher frame rates. Therefore CPU use was relatively stable.

The lines meet several times on the graph and this is likely to be during particularly heavy GPU work loads (<60fps) where GPU usage, even with vsync on, would be at 100% and therefore CPU use would match the fps being produced. That would explain why component usage would match up.

I pulled out two threads from that graph to make it clearer:
0KNb8.jpg

Here you can see that the CPU use with Vsync off and GPU use with vsync on was a near mirror image of one another.
As the graphical load decreases either CPU use had to increase to support higher FPS or the GPU throttle had to decrease to maintain 60fps.

Lastly I made an average of each test to see how much harder the system was working with Vsync off:
XlQCC.jpg

Again, where the GPUs were struggling to produce 60fps both tests had equal component usage but when >60FPs was possible putting Vsync on made a significant reduction in joint usage. That makes for a cooler and quieter system :D

That's just a benchmark test (if likely to be a reliable one) so I'll so some more tests in games soon...
 
Last edited:
You have made some assumptions here that are not correct.

CPU use actually decreased with vsync on and at times it was significantly less.

Is that not sort of obvious? - when vsync is on the display function (cpu side) will be called per frame by a framework such GLUT(opengl). The GPU does not throttle at all.
 
An interesting find :) I would have thought CPU useage would have increased, so as to manage the Vsync calculations and whatnot. I guess that's all done on the GPU itself, or it's just not very demanding on the CPU. Good to see that Vsync saves both the GPU and the CPU.
 
The GPU does not throttle at all.
Ok, so that makes me wonder what 'usage' actually means?

I thought the obvious part was that the gpu throttled to maintain 60fps? My HWM was definitely registering a drop in temp and GPU usage.

What I wasn't sure about was whether cpu use decreased or not as well and that's just because I haven't seen any hard evidence on the subject (and don't know enough on the technical side of the subject to make informed guesses).

Care to explain a bit further?
 
Just thinking about it whilst I was in the gym. As you do.

Andrew - Are you simply saying that it's not the gpus that throttle but the CPU and therefore it bottlenecks the GPU(s)?
 
just throwing this out there... do you have the iGPU active?
kinda weening the spill-over from the sync ops? hence CPU
interaction..

airdeano
 
You go to the gym early, jesus. The staff there must love you :lol:
Up at 0550 most days to get some phys in before work! The staff don't mind it. It's not like they actually do anything at that time in the morning.

just throwing this out there... do you have the iGPU active?
kinda weening the spill-over from the sync ops? hence CPU
interaction..

airdeano
Hmm, I've had a look around the bios and can't actually find the setting to enable/disable the iGPU. To be honest I really don't know whether it is on or off. I'm not even sure if it's possible to turn it off anyway? I thought that it would just sit idling when it wasn't plugged in to a display.
 
Back
Top