PAPI_read(3)

πŸ’… NAME

okay so bestie, welcome to the PAPI_read(3) page from the PAPI manual. This one is literally β€œRead hardware counters from an event set.” That’s the whole main-character summary. ✨

✨ SYNOPSIS

🧚 C Interface:

#include <papi.h>
 int PAPI_read(int  EventSet, long_long * values );

🌸 Detailed Description

PAPI_read() copies the counters of the indicated event set into the provided array.

The counters continue counting after the read. Highkey note the differences between PAPI_read() and PAPI_accum(), specifically that PAPI_accum() resets the values array to zero.

PAPI_read() assumes an initialized PAPI library and a properly added event set. No cap. 🫢

🌟 Parameters

  • EventSet β€” an integer handle for a PAPI Event Set as created by PAPI_create_eventset()
  • *values β€” an array to hold the counter values of the counting events

πŸ’€ Return values

  • PAPI_EINVAL β€” One or more of the arguments is invalid.
  • PAPI_ESYS β€” A system or C library call failed inside PAPI, see the errno variable.
  • PAPI_ENOEVST β€” The event set specified does not exist.

πŸŽ€ Examples

do_100events();
if (PAPI_read(EventSet, values) != PAPI_OK)
   handle_error(1);
// values[0] now equals 100
do_100events();
if (PAPI_accum(EventSet, values) != PAPI_OK)
   handle_error(1);
// values[0] now equals 300
values[0] = -100;
do_100events();
if (PAPI_accum(EventSet, values) != PAPI_OK)
    handle_error(1);
// values[0] now equals 0

πŸ‘€ See also

  • PAPI_accum
  • PAPI_start
  • PAPI_stop
  • PAPI_reset

πŸ‘‘ Author

Generated automatically by Doxygen for PAPI from the source code.


okay that’s the whole PAPI_read(3) moment, bestie. Version 7.2.0.0, dated Wed Jun 25 2025 19:30:48 β€” slay and goodbye πŸ’…βœ¨