0

I'm working in an application that needs to monitor CPU usage on Windows 10. I'm using PerformanceCounter and counter % Processor Utility. When the CPU usage in Windows Task Manager gets 100%, PerformanceCounter returning more than 100% (like 120, 170%). PerformanceCounter cpuUsage = new PerformanceCounter("Processor Information", "% Processor Utility", "_Total", true);

Searching i've found that sometimes it's normal processor utility return more than 100%. But task manager don't show values higher than 100%. I want to know if is there a way to "convert" processor utility return into a 100% scale? what is the highest value that the processor utility can achieve? is the maximum processor utility return limit associated with the number of cpu cores?

  • 1
    Unfortunately not, it's rather difficult to show the "exact" processor utilization (whatever that really means). As you noted, Task Manager and Performance Monitor can show differing values, and Process Explorer will show you yet another differing value. Part of the problem is that with newer processor architectures, you get stuff like SpeedStep and Turbo Boost (Intel versions) making the exact accounting pretty much implementation-dependent. Other hardware features, such as HyperThreading, might further complicate this as well. – Chris O Dec 27 '22 at 23:41
  • @ChrisO thank you!! So I'll decide with my team wich approach they want to use, since all values are correct depending on the counter. – Bianca Longhi Dec 28 '22 at 10:54

0 Answers0