It is currently January 24th, 2021, 9:38 pm

## [Bug] PowerPlugin reporting 0 MHZ clock speed on AMD CPUs

Report bugs with the Rainmeter application and suggest features.
SilverAzide
Rainmeter Sage
Posts: 1096
Joined: March 23rd, 2015, 5:26 pm

### Re: [Bug?] PowerPlugin reporting 0 MHZ clock speed on AMD CPUs

jsmorley wrote: June 25th, 2020, 7:03 pm I don't know offhand what the Power plugin is using to get this information, but if it is using PerfMon to do so, you might have them try this:

https://forum.rainmeter.net/viewtopic.php?f=118&t=23156
They reported back that rebuilding the PerfMon database didn't work, the Power plugin measure still reports 0 Mhz.
Brian
Developer
Posts: 2074
Joined: November 24th, 2011, 1:42 am
Location: Utah

### Re: [Bug?] PowerPlugin reporting 0 MHZ clock speed on AMD CPUs

SilverAzide wrote: June 25th, 2020, 8:09 pm They reported back that rebuilding the PerfMon database didn't work, the Power plugin measure still reports 0 Mhz.
While looking at the source, the plugin appears to check some power functions before looking for the processor information. I have tweaked it a bit and added some logging information if any error occurs.

Could you have them try this version and see if it helps? (Don't forget to have them check the log for errors.)
https://builds.rainmeter.net/Rainmeter-4.4-r3387-beta.exe

We rely on the Windows API to get this value, so if the problem persists, I suspect there may be a driver issue where Windows cannot see the correct value.

-Brian
SilverAzide
Rainmeter Sage
Posts: 1096
Joined: March 23rd, 2015, 5:26 pm

### Re: [Bug?] PowerPlugin reporting 0 MHZ clock speed on AMD CPUs

Brian wrote: June 26th, 2020, 11:06 pmCould you have them try this version and see if it helps? (Don't forget to have them check the log for errors.)
Will do!
M-Michael
Posts: 1
Joined: July 9th, 2020, 11:36 am

### Re: [Bug?] PowerPlugin reporting 0 MHZ clock speed on AMD CPUs

I experience the same problem, using an AMD 3700X, looks like the problem is coming from the new Ryzen processors. I'm using Rainmeter 4.4.0.3397 (also tried release 3387, which Brian linked above) on Windows 10 with Microsofts default processor driver. Sadly my log does not have any errors or anything about the power plugin, but I post it anyway.
And this is how I use the plugin in my skin:

Code: Select all

[MeasureCPUspeed]
Measure=Plugin
Plugin=PowerPlugin
PowerState=MHz

[MeterValueCPUspeed]
Meter=String
MeterStyle=StyleRightText
MeasureName=MeasureCPUspeed
Text=%1 MHz

Kind regards,
Michael
Yincognito
Posts: 2976
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

### Re: [Bug?] PowerPlugin reporting 0 MHZ clock speed on AMD CPUs

I use MSI Afterburner as my GPU / Temperature "source" instead of HWiNFO and others, and some "issues" regarding how (and if) the CPU usage was reported on Ryzen processors were experienced by users there as well (not sure about power related information retrieval though, but I guess there could be a connection between those areas). Workarounds have probably been discovered or the said issues were fixed by now, but yeah, those Ryzen processors did (or still do?) need some "special handling" in these hardware information retrieval scenarios...
SilverAzide
Rainmeter Sage
Posts: 1096
Joined: March 23rd, 2015, 5:26 pm

### Re: [Bug] PowerPlugin reporting 0 MHZ clock speed on AMD CPUs

In case anyone wanders onto this thread after experiencing this issue, here is a work-around you can use to replace the PowerPlugin measure with a set of measures that work even better, and with no need for a third-party utility like HWiNFO.

Assuming you have a measure to monitor the clock speed of your CPU, like this for example:

Code: Select all

[MeasureCPUSpeed]
Measure=Plugin
Plugin=PowerPlugin
PowerState=MHz
Replace the above with this:

Code: Select all

[MeasureCPUFrequency]
Measure=Plugin
Plugin=UsageMonitor
Category="Processor Information"
Counter="Processor Frequency"
Name="0,_Total"

[MeasureCPUPercentPerformance]
Measure=Plugin
Plugin=UsageMonitor
Category="Processor Information"
Counter="% Processor Performance"
Name="0,_Total"

[MeasureCPUSpeed]
Measure=Calc
Formula=MeasureCPUFrequency * MeasureCPUPercentPerformance / 100
Note that these measures assume you have one physical CPU, thus they report the info for CPU #0 only. For those rare folks with multi-CPU systems, you'll need to take additional action.
jsmorley
Developer
Posts: 21470
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

### Re: [Bug] PowerPlugin reporting 0 MHZ clock speed on AMD CPUs

SilverAzide,

Clever.. That seems to work really well.
Yincognito
Posts: 2976
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

### Re: [Bug] PowerPlugin reporting 0 MHZ clock speed on AMD CPUs

SilverAzide wrote: August 1st, 2020, 1:07 am In case anyone wanders onto this thread after experiencing this issue, here is a work-around you can use to replace the PowerPlugin measure with a set of measures that work even better, and with no need for a third-party utility like HWiNFO.

Assuming you have a measure to monitor the clock speed of your CPU, like this for example:

Code: Select all

[MeasureCPUSpeed]
Measure=Plugin
Plugin=PowerPlugin
PowerState=MHz
Replace the above with this:

Code: Select all

[MeasureCPUFrequency]
Measure=Plugin
Plugin=UsageMonitor
Category="Processor Information"
Counter="Processor Frequency"
Name="0,_Total"

[MeasureCPUPercentPerformance]
Measure=Plugin
Plugin=UsageMonitor
Category="Processor Information"
Counter="% Processor Performance"
Name="0,_Total"

[MeasureCPUSpeed]
Measure=Calc
Formula=MeasureCPUFrequency * MeasureCPUPercentPerformance / 100
Note that these measures assume you have one physical CPU, thus they report the info for CPU #0 only. For those rare folks with multi-CPU systems, you'll need to take additional action.
Hopefully I'm mistaken or I'm missing something here, but I did a test and it came out a bit off, from what I can tell. I set my CPU to max 50% from the Control Panel's (Advanced) Power Options, effectively limiting my CPU to 1100 MHz, but your otherwise ingenious method is reporting half of that, as per the formula. It seems in this case, the (slightly less) than 50% reported by PerfMon in "% Processor Performance" is actually (1100 MHz / 2300 MHz) * 100, aka (CurrentFrequency / MaxFrequency) * 100, so multiplying again with that 50% value is producing half of what it should output:
PowerVsPerfM.jpg
(Power is the value from the Power Plugin, PerfM is the value from your MeasureCPUSpeed measure)

That being said, I fully agree with jsmorley here, this is quite ingenious otherwise.
You do not have the required permissions to view the files attached to this post.
buckb
Posts: 47
Joined: February 12th, 2018, 12:47 am

### Re: [Bug] PowerPlugin reporting 0 MHZ clock speed on AMD CPUs

I looked at processor frequency and scaling a few years back:

https://forum.rainmeter.net/viewtopic.php?f=119&t=29020&p=151406&hilit=buckb#p151406

For my CPU skin, I settled on:

1) CPU utilization: "Processor Information\% Processor Utility"

2) CPU frequency: Nominal processor frequency from the registry's "HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor\0\~MHz" multiplied by Perfmon's "Processor Information\% Processor Performance"

I found these values to best match what Task Manger and Resource Monitor were reporting. I found PowerPlugin's reported frequency to be unreliable across my machines (all Intel).

--buckb
SilverAzide
Rainmeter Sage
Posts: 1096
Joined: March 23rd, 2015, 5:26 pm

### Re: [Bug] PowerPlugin reporting 0 MHZ clock speed on AMD CPUs

buckb wrote: August 1st, 2020, 7:28 pm
Thanks buckb! I'll give that a try...