PAPI

References

Introduction

The Performance Application Programming Interface (PAPI) provides a standardized user level API for accessing processor and other system programmer counter information (such as instruction counts, cache misses, etc.).

PAPI details are provided on the PAPI Website.

PAPI on XC40

PAPI is available on Theta through the “papi” or “perftools-base” modules.

The preset and native events available on Theta may be listed by running the 'papi_avail' and 'papi_native_avail' utilities on a compute node via the qsub command. Accessing native events requires using the event names reported by 'papi_native_avail' as a string and converting them into an event code with the function PAPI_event_name_to_code().

PAPI on the BG/Q

PAPI is installed in /soft/perftools/papi

The preset and native events available on the Blue Gene/Q are listed by the 'papi_avail' and 'papi_native_avail' utilities. These utilities are in the /soft/perftools/papi/bin directory and are compiled to run on the compute nodes and therefore must be run using the qsub command. Sample output from these commands may be found in the directory /soft/perftools/papi/output. Accessing native events requires using the event names reported by 'papi_native_avail' as a string and converting them with the function PAPI_event_name_to_code() into an event code.