The
perf framework
[8], also referred to as
perf_events, is a performance monitoring tool and event tracer closely integrated with the Linux OS kernel. Its primary functionality is based on the
sys_perf_event_open [9] system call introduced in the 2.6 series of Linux. The system call enables access to special-purpose registers of the CPU that may be configured to collect the counts of specific hardware-level events. These events may vary from processor to processor, but their main categories include the following:
• Cache related: misses and references issued. These may be further grouped by cache level (L1 through L3), cache type (instruction and data), and access type (loads and stores).