Page 1 of 20

New UsageMonitor plugin

Posted: April 26th, 2018, 7:03 pm
by jsmorley
Thanks to clever design and hard work by Rainmeter developer tjhrulz, we have added a new UsageMonitor plugin to the build.

This plugin will entirely deprecate both of the existing AdvancedCPU and PerfMon plugins, and should be used in their place going forward.

This should also be used in favor of the 3rd-party NomFerp plugin, which has some performance and localization issues, and seems to be abandoned in any case.

The reduction in CPU usage by this plugin, and the complete elimination of the nasty "blocking / stuttering" effect that the older plugins had on overall Rainmeter performance, is DRAMATIC!

Key features:

1) Uses defined Alias options to simplify getting the Category and Counter you want from perfmon.
2) Can obtain values by "total", "average", "index of top", or by instance "name".
3) Programs like chrome that create multiple (chrome#1, chrome#2) processes are automatically rolled-up.
4) If you are on Windows 10 - Fall Creators Update or later, new GPU information is available.
5) The plugin in fully "localized", and can be used with any system language supported by Windows.

Details and examples are at:

>> Usage Monitor Plugin

Re: New UsageMonitor plugin

Posted: April 26th, 2018, 7:04 pm
by jsmorley
Now we need you folks to really beat this up, and report any issues so we can stamp them out!

Re: New UsageMonitor plugin

Posted: April 26th, 2018, 7:07 pm
by tjhrulz
Yeah especially feel free to stress test it in different languages.

Re: New UsageMonitor plugin

Posted: April 26th, 2018, 7:17 pm
by jsmorley
This .rmskin will demonstrate how little CPU this plugin uses. Check the difference between RainmeterProcessNew.ini (the new UsgeMonitor plugin) and RainmeterProcess.ini (using the old Perfmon plugin)
RainmeterProcess_1.0.rmskin
1.jpg
I can't stress enough that if you have any existing skins that are using PerMon plugin or AdvancedCPU plugin, change them to use UsageMontior plugin. Now...

Re: New UsageMonitor plugin

Posted: April 26th, 2018, 7:29 pm
by SilverAzide
:yahoo:

Re: New UsageMonitor plugin

Posted: April 26th, 2018, 7:35 pm
by fonpaolo
Just a small question, reading the docs:
"Alias=IOREAD
Category: Process | Counter: IO Read Bytes/sec
Bytes per second of read usage by each process,
across all disks."
How can I replace PerfMon to monitor read/write of a single disk?
Maybe I miss something...

Re: New UsageMonitor plugin

Posted: April 26th, 2018, 7:40 pm
by jsmorley
fonpaolo wrote:Just a small question, reading the docs:
"Alias=IOREAD
Category: Process | Counter: IO Read Bytes/sec
Bytes per second of read usage by each process,
across all disks."
How can I replace PerfMon to monitor read/write of a single disk?
Maybe I miss something...
Alias=IOREAD is designed to see how much reading a "process" is doing, or that "all processes" are doing if Index=0. If you want to see how much reading is being done on a particular "drive" you might use:

Code: Select all

[MeasureDrive1Read]
Measure=Plugin
Plugin=UsageMonitor
Category=PhysicalDisk
Counter=Disk Read Bytes/sec
Name=0 C:
Or:

Code: Select all

[MeasureDrive1Read]
Measure=Plugin
Plugin=UsageMonitor
Category=LogicalDisk
Counter=Disk Read Bytes/sec
Name=C:
This won't, and can't, be both for a particular "process" AND a particular "drive". It's not separated that way in perfmon. You can't ask "how much is Rainmeter reading from Drive C?", only "how much is Rainmeter reading?". There are no multi-tiered counters in perfmon, with Category>Counter>Instance>Instance of an Instance. Just not structured that way.
`.jpg

Re: New UsageMonitor plugin

Posted: April 26th, 2018, 8:25 pm
by jsmorley
tjhrulz found this posted on Discord already... I had to really laugh.

Image

Sorry, but Microsoft only added GPU to both TaskManager and Perfmon in Windows 10. Windows 7 Luddites will have to do without.. ;-)

Re: New UsageMonitor plugin

Posted: April 26th, 2018, 9:22 pm
by jsmorley
I have to say, I have a moderately complicated "System" skin that I have run forever...
`.jpg
It used to use a bunch of PerfMon measures, and recently I changed to using NomFerp, as that was a bit more efficient.

When all my normal skins including this one were running, Rainmeter would hover between 1.5% and 3.0% of total CPU.

I have just reworked it using the new UsageMonitor plugin, and wow.

Now Rainmeter is hovering between 0.4% and 0.8% of total CPU, and really never even gets to 1%. It's a small thing in the scope of world history, but I'm really pleased.

Again, I can't recommend enough that if you have any skin that are using AdvancedCPU, PerfMon, or NomFerp, you rework them to use UsageMonitor. I think you will be happy with the results.

Re: New UsageMonitor plugin

Posted: April 26th, 2018, 10:27 pm
by SilverAzide
jsmorley wrote:Again, I can't recommend enough that if you have any skin that are using AdvancedCPU, PerfMon, or NomFerp, you rework them to use UsageMonitor. I think you will be happy with the results.
Hello! I noticed the 4.2 docs have officially declared PerfMon and AdvancedCPU deprecated. One question... PerfMon has an option PerfMonDifference which defaults to 1. I've always used the option PerfMonDifference=0, which seems to be the way UsageMonitor behaves. Is there a migration path for PerfMonDifference=1?