fbpx
Wikipedia

Performance Application Programming Interface

In computer science, Performance Application Programming Interface (PAPI) is a portable interface (in the form of a library) to hardware performance counters on modern microprocessors. It is being widely used to collect low level performance metrics (e.g. instruction counts, clock cycles, cache misses) of computer systems running UNIX/Linux operating systems.

PAPI provides predefined high level hardware events summarized from popular processors and direct access to low level native events of one particular processor. Counter multiplexing and overflow handling are also supported.

Operating system support for accessing hardware counters is needed to use PAPI.

For example, prior to 2010, a Linux/x86 kernel had to be patched with a performance monitoring counters driver (perfctr link) to support PAPI. Since Linux version 2.6.32, and PAPI 2010 releases, PAPI can leverage the existing perf subsystem in Linux, and thus does not need any out of tree driver to be functional anymore.

Supported Operating Systems and requirements are listed in the official repository's documentation INSTALL.txt.

See also edit

Further reading edit

  • A Portable Programming Interface for Performance Evaluation on Modern Processors / International Journal of High Performance Computing Applications archive Volume 14 Issue 3, August 2000, Pages 189-204 doi:10.1177/109434200001400303 (in English)
  • Dongarra, Jack, et al. "Using PAPI for hardware performance monitoring on Linux systems" // Conference on Linux Clusters: The HPC Revolution. Vol. 5. Linux Clusters Institute, 2001. (in English)

External links edit

  • Official site
  • Philip Mucci, Performance Monitoring with PAPI / Dr.Dobbs, June 01, 2005
  • , 2009


performance, application, programming, interface, computer, science, papi, portable, interface, form, library, hardware, performance, counters, modern, microprocessors, being, widely, used, collect, level, performance, metrics, instruction, counts, clock, cycl. In computer science Performance Application Programming Interface PAPI is a portable interface in the form of a library to hardware performance counters on modern microprocessors It is being widely used to collect low level performance metrics e g instruction counts clock cycles cache misses of computer systems running UNIX Linux operating systems PAPI provides predefined high level hardware events summarized from popular processors and direct access to low level native events of one particular processor Counter multiplexing and overflow handling are also supported Operating system support for accessing hardware counters is needed to use PAPI For example prior to 2010 a Linux x86 kernel had to be patched with a performance monitoring counters driver perfctr link to support PAPI Since Linux version 2 6 32 and PAPI 2010 releases PAPI can leverage the existing perf subsystem in Linux and thus does not need any out of tree driver to be functional anymore Supported Operating Systems and requirements are listed in the official repository s documentation INSTALL txt See also editPerformance analysisFurther reading editA Portable Programming Interface for Performance Evaluation on Modern Processors International Journal of High Performance Computing Applications archive Volume 14 Issue 3 August 2000 Pages 189 204 doi 10 1177 109434200001400303 in English Dongarra Jack et al Using PAPI for hardware performance monitoring on Linux systems Conference on Linux Clusters The HPC Revolution Vol 5 Linux Clusters Institute 2001 in English External links editOfficial site Philip Mucci Performance Monitoring with PAPI Dr Dobbs June 01 2005 Development of a PAPI Backend for the Sun Niagara 2 Processor 2009 nbsp This computer library related article is a stub You can help Wikipedia by expanding it vte Retrieved from https en wikipedia org w index php title Performance Application Programming Interface amp oldid 1177173225, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.