SilverAzide wrote: ↑February 23rd, 2021, 12:36 pm
Actually there is something... I found a few mentions on various info sources (not sure how trustworthy they are) that "% Processor Utility" is actually what Task Manager uses. Comparing the output of "% Processor Utility" vs. "% Processor Time" vs. Task Manager seems to confirm this; "% Processor Time" always (for me) reads low compared to the other two. And so does the standard Rainmeter CPU measure. "% Processor Utility" also seems to match Resource Monitor output.
I still would be a little skeptical, but then Microsoft docs say this (seen if you check the "Show description" checkbox in the Add Counters dialog of Perf Mon) [emphasis mine]:
One argument for NOT using "% Processor Utility" is this [emphasis mine]:
"% Processor Time" will never exceed 100% since it is calculated by subtracting from 100. So, I'm not sure which is better in the long run...
Perhaps "% Processor Utility" doesn't account for overclocking, so if you are running at 125% of the base clock, the numbers are 25% higher?
Hmm... it seems you're absolutely right on this one, as stated here
(I imagine the statements are true for Win 10 as well, even though they're marked as for Win 8). Since it's a Microsoft link, I suppose it can be rated as trustworthy - after all, these are their own products. And yes, in my view the "nominal performance" part in your quote means exactly the CPU's original frequency (i.e. not under- or over- clocked).
Personally, having the CPU usage over 100% wouldn't bother me a bit, as long as I display somewhere in the skin the nominal/original CPU frequency. Currently I do have the CPU frequency displayed for precisely that reason, but it does react to underclocking, since it's a PowerPlugin based measure (this can easily be changed though).
I'm actually much more concerned at having the other CPU measurements
(e.g. the CPU measures, the Alias based UsageMonitor measures, the various "external" - like HWiNFO or MSI Afterburner - plugin based measures) following the same "methodology"
, so that all the values add up nicely and relate to one another. I have no idea whether they (all) "internally" use "Processor"/"% Processor Time" or "% Processor Utility" based values, but to me having the same "base" of measurement is absolutely critical if I want my skins to be accurate. I mean, if I get program A use 35% CPU and program B use 25% CPU (with the rest of the running programs at 0% CPU for the sake of argument) and the total CPU usage is measured at 85%, it would make no sense as 35 + 25 yields nowhere near 85 (I'm assuming the same moment in time when all these are measured - an impossible thing, but you get the idea). For example, in the case of processes, only "% Processor Time" is available for measurement in the PerfMon counters, and not "% Processor Utility". Sure, there is a "% Privileged Time" (or even "% User Time") available there, but I'm not sure if that is the "% Processor Utility" equivalent or even enough to get a "% Processor Utility" based value. Sources clearly state that there is a connection/similarity in the measurement methodology between the two, but whether they are the same it's an entirely different story, and I get the feeling that the answer to that is not exactly satisfactory...
Bottom line, it's a bit of a mess, and currently the only common denominator of all these is still "% Processor Time", I suppose. As inaccurate as it is (at least compared to the Task Manager, if one rates the Task Manager values as being "the right ones" - yet another question to answer, LOL), it is found in most of these counters. I have no clue what the external programs like HWiNFO or MSI AB use to measure stuff like that (if they use one of these methods and not some other system entirely, that is - again, another dilemma), and that would also play a role in a "same standards" decision.