It is currently September 29th, 2022, 6:17 pm

[Bug] Skins show lower than actual CPU Usage in Windows 11 22H2

Report bugs with the Rainmeter application and suggest features.
Beeta
Posts: 3
Joined: September 21st, 2022, 10:07 pm

[Bug] Skins show lower than actual CPU Usage in Windows 11 22H2

Post by Beeta »

Hi! Installed Windows 11 22H2 update today and my skins no longer show proper CPU Usage, it shows a much lower CPU usage. Tested a few other skins as well, they all show like 1/3 of the actual cpu usage under heavy load (100%) and about 1/10 of the CPU usage under lower load (10-12%).

Was thinking it might have something to do with the new task manager in 22H2? I've attached a few screenshots. I currently use Rainformer AIDA64 skin.
Screenshot 2022-09-22 001130.png
Screenshot 2022-09-22 001048.png
If you need any more information, please let me know.
You do not have the required permissions to view the files attached to this post.
User avatar
SilverAzide
Rainmeter Sage
Posts: 2049
Joined: March 23rd, 2015, 5:26 pm

Re: [Bug] Skins show lower than actual CPU Usage in Windows 11 22H2

Post by SilverAzide »

Beeta wrote: September 21st, 2022, 10:14 pm Hi! Installed Windows 11 22H2 update today and my skins no longer show proper CPU Usage, it shows a much lower CPU usage. Tested a few other skins as well, they all show like 1/3 of the actual cpu usage under heavy load (100%) and about 1/10 of the CPU usage under lower load (10-12%).

Was thinking it might have something to do with the new task manager in 22H2? I've attached a few screenshots. I currently use Rainformer AIDA64 skin.

Screenshot 2022-09-22 001130.png

Screenshot 2022-09-22 001048.png

If you need any more information, please let me know.
If you don't mind, please try the CPU Meter skin here: Gadgets. This skin will (should?) properly show the CPU usage and should match what you see in Task Manager. If it works, let me know.
Gadgets Wiki GitHub More Gadgets...
Beeta
Posts: 3
Joined: September 21st, 2022, 10:07 pm

Re: [Bug] Skins show lower than actual CPU Usage in Windows 11 22H2

Post by Beeta »

SilverAzide wrote: September 21st, 2022, 10:59 pm If you don't mind, please try the CPU Meter skin here: Gadgets. This skin will (should?) properly show the CPU usage and should match what you see in Task Manager. If it works, let me know.
The Gadgets CPU-meter seems to be accurate on Windows 11 22H2 as below screenshots when I compare it to Rainformer and Task Manager.

However the top CPU rainmeter from Gadgets seems to show the exact same symptoms as Rainformer under 22H2, it only shows a few process for a few seconds, then more processes the next second and the other second just two process for example. And the CPU usage in the top CPU rainmeter on both Gadgets and Rainformer show the incorrect CPU usage for processes. See screenshots below.

How come Gadgets cpu usage works but not Rainformers? Worked perfectly on Windows 11 21H2.
Screenshot 2022-09-22 075807.png
Screenshot 2022-09-22 075836.png
Screenshot 2022-09-22 080704.png
You do not have the required permissions to view the files attached to this post.
Beeta
Posts: 3
Joined: September 21st, 2022, 10:07 pm

Re: [Bug] Skins show lower than actual CPU Usage in Windows 11 22H2

Post by Beeta »

I tried to uninstall Rainmeter completely with all preferences and deleted the Rainmeter folder in Documents. Did a clean install of latest Rainmeter build. Bug is still present in the default skins under a clean install:
Screenshot 2022-09-22 143840.png
You do not have the required permissions to view the files attached to this post.
User avatar
SilverAzide
Rainmeter Sage
Posts: 2049
Joined: March 23rd, 2015, 5:26 pm

Re: [Bug] Skins show lower than actual CPU Usage in Windows 11 22H2

Post by SilverAzide »

Beeta wrote: September 22nd, 2022, 6:14 am The Gadgets CPU-meter seems to be accurate on Windows 11 22H2 as below screenshots when I compare it to Rainformer and Task Manager.

However the top CPU rainmeter from Gadgets seems to show the exact same symptoms as Rainformer under 22H2, it only shows a few process for a few seconds, then more processes the next second and the other second just two process for example. And the CPU usage in the top CPU rainmeter on both Gadgets and Rainformer show the incorrect CPU usage for processes. See screenshots below.

How come Gadgets cpu usage works but not Rainformers? Worked perfectly on Windows 11 21H2.
I can't say for sure why you see a difference between Win11 21H2 and Win11 22H2. It may have something to do with Microsoft tweaking the way the thread scheduler works for the newer hybrid CPUs (p-cores vs. e-cores). What I can say is that all this usage info is coming from Windows itself, so Rainmeter is only telling you what Windows says. (The Top CPU Meter does bounce around a lot because Rainmeter does not report processes that use less than 0.1% CPU. That is why things appear and disappear; unfortunately, there's nothing I can do about that, it is a Rainmeter issue.)

With all that said, I do need point out that the CPU utilization you see in Windows Task manager has not matched Rainmeter since approximately Windows 8. (This does not mean your observations about Win11 22H2 aren't correct, they may be true too.) If you want the long version, here it is:

Starting with Windows 8, a change was made to the way that Task Manager and Performance Monitor report CPU utilization. This change affects the way that CPU utilization is computed. Microsoft created new performance counters, Processor Information > % Processor Utility and Processor Information > % Privileged Utility that attempt to better report the work a CPU is doing; starting with Windows 8, Task Manager now uses these counters. The old performance counters, Processor > % Processor Time and Processor > % Privileged Time still exist, and were used by Task Manager in Windows 7 and earlier.

Important points to keep in mind:
  • Rainmeter's CPU measure and the UsageMonitor plugin with the CPU alias both use the Windows 7-style Processor > % Processor Time counter.
  • Task Manager's CPU Performance tab will truncate (or clamp) CPU utilization values to 100%. (Windows Resource Monitor will show values over 100%.)
Here's the gnarly bit:
The difference between the two counter types concerns how they measure the actual work that the processor performs. The old time-based performance counters measure the percentage of time that the processor is busy, whereas the new utility performance counters measure how much work the processor actually performs. The utility performance counters take into account the processor performance state and Turbo Boost-based enhancements to measure and normalize the work that's being done by the CPU.

This change was intended to provide a more accurate representation of how much work the system is handling, and the utility counters do just that. A processor that's running 50% of the time and clocked down to 50% frequency performs only half the work of a processor that's running 100% of the time at 100% frequency. Before this change, under the time-based performance counters (used in Windows 7 Task Manager), those two processors clocked differently. Both appear to be doing the same amount of work: 100% of their capacity. With the redesigned Task Manager, the first processor is shown to be running at 50% capacity, whereas the second processor is shown to be running at 100% capacity. And Turbo Boost drives the processor above 100% of its nominal speed, and allows the processor to exceed 100% capacity.

What this means to you:
Any Rainmeter skin that uses CPU measures, or UsageMonitor measures that use the CPU alias, will not report CPU performance accurately (or at least, not the same way Task Manager or Resource Monitor does). This is why the Gadgets CPU Meter matches Windows 11's Task Manager, it uses the new utility performance counters. If you want to see the difference, open the CPU Meter Settings skin (click the wrench icon in the upper right corner) and check the option "Use Legacy Mode". This will flip the skin around to use the old Win7 time-based counters, and you'll see it now acts like your other CPU skins.

An easy way to tell what any skin is using without digging into the code is to max out your CPU and look to see if the performance exceeds 100%. The old time-based counters never exceed 100%, but the utility-based counter will reflect >100% when the CPU is running in turbo/boost mode.
Gadgets Wiki GitHub More Gadgets...
User avatar
SilverAzide
Rainmeter Sage
Posts: 2049
Joined: March 23rd, 2015, 5:26 pm

Re: [Bug] Skins show lower than actual CPU Usage in Windows 11 22H2

Post by SilverAzide »

Beeta wrote: September 22nd, 2022, 12:43 pm I tried to uninstall Rainmeter completely with all preferences and deleted the Rainmeter folder in Documents. Did a clean install of latest Rainmeter build. Bug is still present in the default skins under a clean install:
As I mentioned above, this really isn't a Rainmeter issue, so re-installing will have no effect. This is a Windows issue. And you are not imagining it. It does seem MS made a change in 22H2:

https://www.reddit.com/r/Windows11/comments/twa1o2/incorrect_cpu_usage_in_thirdparty_monitoring/

My guess is that MS changed their time-based performance counters; whether this is a bug or not is a question for them to answer... The MSI Afterburner folks say this is a bug here.
Gadgets Wiki GitHub More Gadgets...