Jump to content

Why you shouldn't rely on Task Manager for CPU Utilization

Poll  

32 members have voted

  1. 1. Does it matter to you how accurate Task Manager is for CPU Utilization?

    • Yes I want all the precision
      14
    • Nah fam, an approximate percentage is good enough for my uses
      12
    • I barely even use Task Manager it doesn't matter to me
      6


Recently I've seen someone report about how Task Manager is inaccurate for CPU Utilization because it relies on the Base Frequency to calculate the CPU Utilization which is completely ridiculous as almost none of the CPUs these days run at those frequencies because of the boost functionality that is becoming more and more prevalent even in the low end.

 

Another view of this is what if Microsoft wanted to focus on the majority instead to provide a more accurate tool *as they claim* in the article below, because custom built PCs are considerably lower in sales, well some OEMs might disable the boost functionality but not all of them do, HP for example lets the CPU Boost behave as intended which is arguably the biggest PC pre-built vendor, it's safe to say that most processors never run at Base Frequency.

 

 

---TESTING---

Onto the tests though, I've tested the CPU at different loads using this tool

https://github.com/GaetanoCarlucci/CPULoadGenerator/tree/Python3/

 

I have an 8700K that is overclocked to 4.6Ghz while the Base Frequency is at 3.7Ghz, that's a 24% overclock over base, the Base Frequency is taken into consideration in Windows but my processor never goes below 4.6Ghz.

 

50% CPU Load

Quote

744464882_50percentload.thumb.jpg.eb0ed18f8aa3461ca2e1d78078e14d64.jpg

 

Both Resource Monitor and Task Manager are at fault here

Task Manager: 62%

Resource Monitor: 62%

 

HWiNFO: 50.7%

 

Difference: ~22% (62/50.7)

Reason for the difference not being 24% is because the load fluctuates a little bit and they report the usage at different intervals while not providing decimal points.


 

 

80% CPU Load

Quote

1600302645_80percentload.thumb.jpg.5577ef8db9f131574d7769922716b18a.jpg

 

Task Manager: 98%

Resource Monitor: 98%

 

HWiNFO: 78.1%

 

Difference: ~25% (98/78.1)

 

 

100% CPU Load

Quote

 

1206308957_100percentload.thumb.jpg.bd0b05e0971b445532386f961e9c8557.jpg

 

Task Manager: 100%

Resource Monitor: 124%

 

HWiNFO: 100%

 

Difference: 24% (124/100)

 

This is where Task Manager becomes the most misleading because it is artificially limited to 100% when Resource Monitor is not, so in my scenario if the CPU load (reported by HWiNFO) is above 80% then Task Manager will report 100% because Microsoft has decided that a percentage scale should be between 0 and ??? because it calculates the percentages based on the Base Frequency where in my case the percentage scale in Resource Monitor is from 0% to 124%.

 

That's not all though because in Resource Monitor the CPU column for the individual processes is actually being reported accurately, same in the Details Tab in Task Manager but not the Processes Tab or the Performance Tab, what's with all the discrepancy? it doesn't make any sense.

 

---Turbo Boost and Microsoft's response---

It becomes even more of a problem when the C-States are enabled and the CPU underclocks itself lower than base on idle then the usage reported by Windows will be lower than the actual CPU Utilization, you could test it yourself by underclocking your CPU lower than base and run a full core load, the CPU usage will never reach 100% in either Task Manager or Resource Monitor, and from my research it seems like this change was made in Windows 8 but back then they let Task Manager behave the same as Resource Monitor by letting it go above 100%.

 

Here's the article that Microsoft released:

https://support.microsoft.com/en-us/help/3200459/cpu-usage-exceeds-100-in-task-manager-and-performance-monitor-if-intel

 

From my understanding they released this article because people kept reporting this as they didn't understand why this was happening, but it's quite appalling that their solution to this in later versions was to slap on a bandage fix and limit Task Manager to 100% so people would stop complaining, though from how they're phrasing it I'm assuming the intended purpose is to take Turbo Boost into account? but that's not what's happening here and even Microsoft themselves don't understand how percentages work because they say in the article "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" that's not true, a processor that's at half the frequency and is running half the time will perform QUARTER the work of one that is running at 100% frequency and 100% of the time.

 

Another thing I've noticed is the Third-party disclaimer on the bottom

"The third-party products that this article discusses are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, about the performance or reliability of these products."

Is Task Manager made by another company? or is that a general statement?

Quote or Tag people so they know that you've replied.

Link to comment
Share on other sites

Link to post
Share on other sites

yea i noticed when i clocked my cpu at 3.5-3.6ghz, the 100% load would show as 92% in task manager, but 100% in msi afterburner

 

imo... good enough for what im doing, as long as u know the quirk is there

-sigh- feeling like I'm being too negative lately

Link to comment
Share on other sites

Link to post
Share on other sites

On my usage, it doesnt really matter that much since my cpu usage rarely get passed 70% on any of those. Only times it reaches 100% for me is when rendering stuff. But i rarely do that.

Im with the mentaility of "IF IM NOT SURE IF ITS ENOUGH COOLING, GO OVERKILL"

 

CURRENT PC SPECS    

CPU             Ryzen 5 3600 (Formerly Ryzen 3 1200)

GPU             : ASUS RX 580 Dual OC (Formerly ASUS GTX 1060 but it got corroded for some odd reasons)

GPU COOOER      : ID Cooling Frostflow 120 VGA (Stock cooler overheats even when undervolted :()

MOBO            : MSI B350m Bazooka

MEMORY          Team Group Elite TUF DDR4 3600 Mhz CL 16
STORAGE         : Seagate Baracudda 1TB and Kingston SSD
PSU             : Thermaltake Lite power 550W (Gonna change soon as i dont trust this)
CASE            : Rakk Anyag Frost
CPU COOLER      : ID-Cooling SE 207
CASE FANS       : Mix of ID cooling fans, Corsair fans and Rakk Ounos (planned change to ID Cooling)
DISPLAY         : SpectrePro XTNS24 144hz Curved VA panel
MOUSE           : Logitech G603 Lightspeed
KEYBOARD        : Rakk Lam Ang

HEADSET         : Plantronics RIG 500HD

Kingston Hyper X Stinger

 

and a whole lot of LED everywhere(behind the monitor, behind the desk, behind the shelf of the PC mount and inside the case)

Link to comment
Share on other sites

Link to post
Share on other sites

On 7/23/2020 at 7:49 PM, Moonzy said:

yea i noticed when i clocked my cpu at 3.5-3.6ghz, the 100% load would show as 92% in task manager, but 100% in msi afterburner

 

imo... good enough for what im doing, as long as u know the quirk is there

To me it shows how lazy Microsoft is, I'm pretty sure they know about this since they mentioned it in the article but for over 8 years they couldn't bother to fix it or provide us with a more accurate tool, I guess at the time Windows 8 started development not many CPUs had turbo boost but I consider it a bullshitty PR statement that it's intended for accuracy since the next statement in their article talking about the work of a processor had zero knowledge on how CPU frequency and utilization even works, but I understand that not many people are concerned about this which is probably why they can't bother.

Quote or Tag people so they know that you've replied.

Link to comment
Share on other sites

Link to post
Share on other sites

Another thing I forgot to mention is that for non-K Intel CPUs the difference is even bigger, their reported Base Frequency is much lower but they still boost their frequency well above that, let's take the new i7-10700 for example, it has a Base Frequency of 2.9Ghz and an All-Core frequency of 4.2Ghz, that's a difference of ~45% (4.2/2.9=45%), so when the actual CPU Utilization is at 69% (nice) assuming the clock is at 4.2Ghz then Task Manager will report 100% Utilization, and anything above 69% will be imperceptible to the user when using Task Manager, but Resource Monitor will keep going up until it reaches 145%.

 

69% * 1.45 = 100% in Task Manager

 

But realistically the difference would be higher than 45% because at those medium loads the CPU will boost higher than 4.2Ghz and it's going to fluctuate all other the place but it would not go below 4.2Ghz unless the CPU is idle or some of the cores are, which is even more complicated to calculate so Task Manager becomes utterly useless.

Quote or Tag people so they know that you've replied.

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×