The Intel® Performance Counter Monitor (Intel® PCM: www.intel.com/software/pcm) is an open-source tool set based on an API. This API can be used directly by developers in their software. Besides the API usage example in the article, other samples of code using the API can be found in pcm.cpp, pcm-tsx.cpp, pcm-power.cpp, pcm-memory.cpp and other sample tools contained in Intel PCM package.
When Intel Performance Counter Monitor (Intel PCM) is generating csv files as output, short names are used as column headers. This helps to keep the table width at a manageable size if the data is loaded in a spreadsheet program. However, it makes it rather hard to guess what exactly is hiding behind these abbreviations.
The uncore performance monitoring units (uncore PMUs) provide many useful information like memory controller traffic, traffic between sockets/processor packages, energy related metrics in the uncore (sleep states for Intel® Quick Path Interconnect links or DRAM sleep states for example). These metrics can be used in tools for system and platform analysis.
Dear Software Tuning, Performance Optimization & Platform Monitoring community,
The recent and upcoming Intel® Core™ processors of 2nd,3rd and 4th generation (previously codenamed Sandy-Bridge, Ivy-Bridge and Haswell) expose model specific counters that allow for monitoring requests to DRAM.
We are proud to announce that Intel Performance Counter Monitor V2.3 (Intel PCM) has been released with the following changes:
- Support of Apple Mac OS X 10.7 ("Lion") and OS X 10.8 ("Mountain Lion")
- Support of FreeBSD
- new tool for monitoring memory traffic per channel on Intel Xeon processor E5 product family.
With that Intel PCM now supports Linux, Windows (XP, 7, 8 Desktop Mode), FreeBSD and MacOS.