Papers/Others

Using PAPI for hardware performance monitoring on Linux systems

tomato13 2010. 6. 25. 13:54

Using PAPI for hardware performance monitoring on Linux systems

(http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.143.5046&rep=rep1&type=pdf)

PAPI is a specification of a cross-platform interface to hardware performance counters on modern

microprocessors. These counters exist as a small set of registers that count events, which are occurrences of specific signals related to a processor's function. Monitoring these events has a variety of uses in application performance analysis and tuning.


.......


The predefined events include accesses to the memory hierarchy, cache coherence protocol events, cycle and instruction counts, and functional unit and pipeline status.


.......


One of the most significant features of PAPI for the tool writer is its ability to call user-defined handlers when a particular hardware event evceeds a specified threshold.


.......


Whn an event exceeds a threshold, a signal is delivered with a number of alguments. Among those arguments is the interrupted thread's stack pinter and register set.


.......


PAPI aims to provide the tool designer and application engineer with a consistent interface and methodology for use of the performance counter hardware found in most major microprocessor lines.


Multiplexing

The number of hardware counters is limited. The multiplexing feature

enables OProfile to gather more events than counters are provided by

the hardware. This is realized by switching between events at an user

specified time interval.


PAPI: A Portable Interface to Hardware Performance Counters

(http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.117.6801&rep=rep1&type=pdf)

The purpose of the PAPI project is to specify a standard application programming interface (API) for accessing hardware performance counters available on most modern microprocessors. These counters exist as a small set of registers that count events, which are occurrences of specific signals related to the processor’s function.