It is currently November 21st, 2018, 3:04 pm

CPU Utilization and frequency scaling

Tips and Tricks from the Rainmeter Community
buckb
Posts: 34
Joined: February 12th, 2018, 12:47 am

CPU Utilization and frequency scaling

buckb » August 17th, 2018, 8:59 pm

I haven't seen this mentioned elsewhere, so...

If the processor utilization reported by your CPU skin matches Perfmon.exe, but does not match Task Manager and Resource Monitor, it's probably because of your processor's frequency scaling (SpeedStep and Turbo Boost for Intel processors).

To make your utilization numbers match those of Task Manager and Resource Monitor, scale the processor utilization by the performance counter "Processor Information\% Processor Performance". I don't know if this is exactly what the Microsoft programs are doing, but the results are very close.

This works on Windows 10. My Windows 7 PC and a Windows 7 VM don't have this counter and other, potentially-promising alternatives didn't pan out on my machines. No idea what you'll see on Windows 8/8.1.


Update

According to Perfmon, the counter "Processor Information\% Processor Utility" is "the amount of work the processor could complete if it were running at its nominal performance and never idle." I read this to mean that this counter is a measure of processor utilization already scaled for processor frequency.

On my machines, I've found "% Processor Utility" to be a better match for Task Manager's and Resource Monitor's utilization numbers than "% Processor Time" scaled by "% Processor Performance". The "% Processor Performance" counter is still useful for calculating Task Manger's "Speed" and Resource Monitor's "Maximum Frequency" numbers.

Note: I've observed that Task Manager caps "Utilization" at 100%, while Resource Monitor lets "CPU Usage" go above 100%.


--buckb
buckb
Posts: 34
Joined: February 12th, 2018, 12:47 am

Re: CPU Utilization and frequency scaling

buckb » August 21st, 2018, 8:01 pm

Initial post updated with additional information.


--buckb