PAPI 5.6.0 Release

PAPI 5.6.0 contains a major cleanup of the source code and the build system to have consistent code structure, eliminate errors, and reduce redundancies.  A number of validation tests have been added to PAPI to verify the PAPI preset events.  Improvements and changes to multiple PAPI components have been made, varying from supporting new events to fixes in the component testing. 

For specific and detailed information on changes made in this release, see ChangeLogP560.txt for keywords of interest or go directly to the PAPI git repository.

Major changes

  • Validation tests:  A substantial effort to add validation tests to PAPI to check and detect problems in the definition of PAPI preset events.  
  • Event testing:  Thorough cleanup of code in the C and Fortran testing to add processor support, cleanup output and make the testing behavior consistent.
  • CUDA component:  Updated and rewritten to support CUPTI Metric API (combinations of basic events).  This component now supports NVLink information through the Metric API. Updated testing for the component.  
  • NVML component: Updated to support power management limits and improved event names. Minor other bug fixes.
  • RAPL component: Added support for: Intel Atom models Goldmont / Gemini_Lake / Denverton, Skylake-X / Kabylake
  • PAPI preset events:  Many updates to the PAPI preset event mappings; Skylake X support, initial AMD fam17h, fix AMD fam16h, added more Power8 events, initial Power9 events.


Other changes

  • Updating man and help pages for papi_avail and papi_native_avail.
  • Powercap component:  Added test for setting power caps via PAPI powercap component.
  • Infiniband component:  Bugfix for infiniband_umad component.
  • Uncore component:  Updated to support recent processors.  
  • Lmsensors component updated to support correct runtime linking, better events name, and a number of bug fixes.
  • Updated and fixed timer support for multiple architectures.
  • All components: Cleanup and standardize testing behavior in the components.
  • Build system: Much needed cleanup of configure and make scripts.
  • Support for C++ was enhanced.
  • Enabling optional support for reading events using perfevent-rdpmc on recent Linux kernels can speed up PAPI_read() by a factor of 5.
  • Pthread testing limited to avoid excessive CPU consumption on highly parallel machines.


Acknowledgements: This release is the result of efforts from many people, with special Thanks to Vince Weaver, Phil Mucci, Steve Kauffman, William Cohen, Will Schmidt, and Stephane Eranian (for libpfm4) from the internal PAPI team.

To verify the integrity of the download, the MD5 sum of
papi-5.6.0.tar.gz = fdd075860b2bc4b8de8b8b5c3abf594a

papi-5.6.0.tar.gz   Download

Copyright © 2020 The University of Tennessee. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
· Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
· Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer listed in this license in the documentation and/or other materials provided with the distribution.
· Neither the name of the copyright holders nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

This software is provided by the copyright holders and contributors "as is" and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. in no event shall the copyright owner or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.

Oct 23 2020 Admin Login