ICL Research Profile

PAPI

Overview

The Performance Application Programming Interface (PAPI) supplies a consistent interface and methodology for collecting performance counter information from various hardware and software components, including most major CPUs, GPUs, accelerators, interconnects, I/O systems, and power interfaces, as well as virtual cloud environments. Industry liaisons with AMD, Cray, Intel, IBM, NVIDIA, and others ensure seamless integration of PAPI with new architectures at or near their release. As the PAPI component architecture becomes more populated, performance tools that interface with PAPI automatically inherit the ability to measure these new data sources.

PAPI 7.0.0 was announced in November 2022. This is a major release that offers several new components, including “intel_gpu” with monitoring capabilities on Intel GPUs; “sysdetect” (along with a new user API) for detecting details of the available hardware on a given compute system; a significant revision of the “rocm” component for AMD GPUs; the extension of the “cuda” component to enable performance monitoring on NVIDIA’s compute capabilities 7.0 and beyond. PAPI 7.0.0 ships with a standalone “libsde” library and a new C++ API for software developers to define software-defined events from within their applications.

Find out more at http://icl.utk.edu/papi/

In Collaboration With

  1. Texas A&M University
  2. University of Maine
  3. Virginia Tech

Sponsored by

  1. Exascale Computing Project
  2. National Science Foundation
  3. The United States Department of Energy

With Support From

  1. AMD
  2. Cray
  3. IBM
  4. Intel
  5. NVIDIA

Project Handout