Cpu percentages for top processes in either "All CPU Meter", or "Top Process Meter" are under counted on Alderlake~
EvocativeOlash opened this issue · 1 comments
Fully loading the cpu with handbrake shows correctly on the main cpu meter but the top processes aren't counting right, handbrake can be at ~20% when it should be near 100%.
Perhaps the e-cores are throwing things off?
It doesn't match what Task Manager of course.
Yeah, I know...
The problem is that Microsoft made a change to Windows 11 around the 22H2 timeframe which changed the way time-based performance counters calculate processor usage. Now everything is reading low, and there isn't a thing anyone can do about it.
The CPU Meter has always used the utility-based performance counters by default to show core usage, which is why you see the cores showing correctly when compared to Task Manager. However, there are no utility-based counters for process usage. Process usage is via time-based counters, and they are all off and reading low since 22H2. You can read more about time-based counters vs. utility-based counters here. Keep in mind that before 22H2, time-based counters and utility-based counters showed almost the same info except when over-clocking or under-clocking. Since 22H2, they are very different all the time.
Recent versions of HWiNFO (and I think MSI Afterburner) have added fixes to the time-based counters, but these fixes only get the time-based CPU usage counters working as they did pre-22H2. None of these work-arounds fix the process usage counters.
Rainmeter is getting process usage directly from the Windows performance counters database, so there's nothing the Rainmeter devs nor I can do to fix this issue. Microsoft seems to use some undocumented API or trick in Task Manager to get the performance to show differently than what their own PerfMon database shows. Until MS addresses this, I'm afraid we are stuck with what we have...