Windows WMI – Equivalent of ‘Load Average’ in Linux

linuxperformance-monitoringwindowswmi

Linux has a notion of Load Average which is defined as:

System load averages is the average number of processes that are either in a runnable or uninterruptable state. A process in a runnable state is either using the CPU or waiting to use the CPU. A process in uninterruptable state is waiting for some I/O access, eg waiting for disk. The averages are taken over the three time intervals. Load averages are not normalized for the number of CPUs in a system, so a load average of 1 means a single CPU system is loaded all the time while on a 4 CPU system it means it was idle 75% of the time.

What is the closest equivalent available via WMI? Fundamentally are there differences between the two OSes which determinate how such a performance metric should be measured? What are the differences?

Best Answer

The Process Queue Length count from the System performance counter object is:

Processor Queue Length is the number of threads in the processor queue[...]

This value is available in WMI via Win32_PerfFormattedData_PerfOS_System.