-
Notifications
You must be signed in to change notification settings - Fork 12
INFO CPU performance exceeds 100
Starting with Windows 8, a change was made to the way that Task Manager and Performance Monitor report CPU utilization. With this change, CPU utilization may appear to exceed 100% when the system is under a heavy load, especially when capacity is boosted by Intel Turbo Boost or AMD Turbo Core/Precision Boost.
This change affects the way that CPU utilization is computed. The values in Task Manager now correspond to the Processor Information > % Processor Utility
and Processor Information > % Privileged Utility
performance counters, not to the Processor > % Processor Time
and Processor > % Privileged Time
counters as in Windows 7.
CPU
measure and the UsageMonitor
plugin with the CPU
alias both use the Windows 7-style Processor > % Processor Time
counter.
The difference between the two counter types concerns how they measure the actual work that the processor performs. The time-based performance counters measure the percentage of time that the processor is busy, whereas the 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. A processor that's running 100% 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), both processors 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.
If you prefer to monitor performance in the manner of Windows 7 and traditional Rainmeter skins, check the Use Legacy Mode option in the All CPU Meter Settings. If you prefer to monitor performance in the manner of Windows 8 and later, uncheck this option.
% Performance Utility vs. % Performance Time
Two All CPU Meters monitoring a 2.6 GHz Intel CPU running in Turbo Boost mode.
"Legacy Mode" is shown at right.
Some users with machines having more than 64 logical cores have noticed that the Rainmeter CPU
measure and the UsageMonitor
plugin with the CPU
alias do not report any data (and in the case of the CPU
measure, will throw errors) when attempting to monitor logical cores above the 64th. This is due to how Windows is designed for machines that have multiple processors and/or have processors with very large core counts.
Windows machines with single CPUs of 64 logical processors or less run in uniform memory access (UMA) mode, which means the CPU can access all the memory in the machine. Other machine architectures are non-uniform memory access (NUMA) or symmetric multiprocessing (SMP). For these machines, Windows will group logical cores into groups of 64 (maximum), although the actual number varies depending on the machine's CPU(s) and user settings. Some machines can be switched to run in either UMA mode or NUMA mode, depending on the hardware.
The Processor Information
performance counter handles all three architecture types. Therefore, the All CPU Meter will monitor your CPUs properly in these cases, where multiple instances of the All CPU Meter will show your CPU(s) by physical processor (for SMP machines) or by NUMA node (for machines in NUMA mode).
Excerpted from this Microsoft article, with additions and corrections. Portions © 2020 Microsoft.