I've managed to get the Processor Counter Monitor to work as a windows service.
This adds extra performance counters which can be read from the windows tool perfmon or with external monitoring tools.
Unfortunately a lot of these performance counters are not working correctly. The following performance counters always report 0:
\PCM Core Counters(*)\L2 Cache Misses
\PCM Core Counters(*)\L3 Cache Misses
\PCM QPI Counters(*)\QPI Link Bandwidth
\PCM Socket Counters(*)\Memory Read Bandwidth
\PCM Socket Counters(*)\Memory Write Bandwidth
Another issue I have is that not all information from the PCM.exe tool is available as a performance counter. The following metrics are missing:
And the actual CPU usage calculations are also missing:
PHYSICAL CORE IPC : 0.83 => corresponds to 20.77 % utilization for cores in active state
Instructions per nominal CPU cycle: 0.68 => corresponds to 16.97 % core utilization over time interval
Update: I've noticed that the L2 and L3 Cache Misses are working, but only if the PCM.exe tool is running.
Seems like PCM-service isn't properly retrieving most metrics from the CPU by itself..