Procedia Computer Science · 2011 · 10 citations · 9 references
EngineeringComputer EngineeringComputer ScienceComputer ArchitectureInstrumentationPerformance MeasurementPerformance AnalyticsPerformance IndicatorsCross-platform Interface DesignHardware InstrumentationHardware MonitoringHardware Performance CountersHardware Performance ModelingMeasurement-based Performance AnalysisPerformance MonitoringSystem Performance Monitoring
PAPI is a widely used cross-platform interface to hardware performance counters. PAPI currently supports native events, which are those provided by a given platform, and preset events, which are pre-defined events thought to be common across platforms. Presets are currently mapped and defined at the time that PAPI is compiled and installed. The idea of user-defined events is to allow users to define their own metrics and to have those metrics mapped to events on a platform without the need to re-install PAPI. User-defined events can be defined in terms of native, preset, and previously defined user-defined events. The user can combine events and constants in an arbitrary expression to define a new metric and give a name to the new metric. This name can then be specified as a PAPI event in a PAPI library call the same way as native and preset events. End-user tools such as TAU and Scalasca that use PAPI can also use the user-defined metrics. Users can publish their metric definitions so that other users can use them as well. We present several examples of how user-defined events can be used for performance analysis and modeling.
9
Samuel Williams, Andrew Waterman, David A. Patterson · Communications of the ACM · 2009 · 2.4K citations · Full text