Back to Geneos FAQ

CPU - CPU plugin under the hood: Windows

Windows CPU details are taken from the statistics published by Windows PerfMon counters.

These figures can be displayed separately using the Windows Performance Monitor program perfmon.exe which comes with Windows.

The plugin uses Windows Performance Counters to retrieve the metrics. The current implementation uses the old PerfMon plugin’s code to retrieve the values. It uses the Registry API instead of the newer PDH API.

The schema for Win-CPU plugin is already deprecated. However, it still uses the Win-CPU plugin code under the hood when running CPU plugin on Windows.

Available Performance Counters can be seen in HKEY\_LOCAL\_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib.

Columns Copied

Column Name Windows 2008 / Vista Windows 2008 R2 and later* Remarks
CPU Processor (238) Processor Information This is used to retrieve the processor instances i.e. 0,1, _Total
%processorTime \Processor(%s)% Processor Time or \238(%s)\6 \Processor Information(%s)% Processor Time where %s represents the processor instance name
%userTime \Processor(%s)% User Time or \238(%s)\142 \Processor Information(%s)% User Time where %s represents the processor instance name
%privilegedTime \Processor(%s)% Privileged Time or \238(%s)\144 \Processor Information(%s)% Privileged Time where %s represents the processor instance name
interrupts/Sec \Processor(%s)\Interrupts/sec or \238(%s)\148 \Processor Information(%s)\Interrupts/sec where %s represents the processor instance name
%DPCTime \Processor(%s)% DPC Time or \238(%s)\696 \Processor Information(%s)% DPC Time where %s represents the processor instance name
%interruptTime \Processor(%s)% Interrupt Time or \238(%s)\698 \Processor Information(%s)% Interrupt Time where %s represents the processor instance name
DPCsQueued/sec \Processor(%s)\DPCs Queued/sec or \238(%s)\1334 \Processor Information(%s)\DPCs Queued/sec where %s represents the processor instance name
DPCRate \Processor(%s)\DPC Rate or \238(%s)\1336 \Processor Information(%s)\DPC Rate where %s represents the processor instance name

Counter index varies on Windows versions.

Commands Copied

Command Name Internal Command Name Source Code Performance Counters Remarks
Top 20 Processes TOPCPU nt_aux.cpp > \Processor where %s represents the processor instance name
All Processes TOPCPU NT_GetCPU() \Processor(%s)% Processor Time where %s represents the processor instance name
["Geneos"] ["Geneos > Netprobe"] ["FAQ"]

Was this topic helpful?