Scroll to navigation

PAPI_read_counters(3) PAPI PAPI_read_counters(3)

NAME

PAPI_read_counters - PAPI High Level: read and reset counters

PAPI_accum_counters - PAPI High Level: accumulate and reset counters

SYNOPSIS

C Interface

#include <papi.h>
int PAPI_read_counters(long_long *values, int array_len);
int PAPI_accum_counters(long_long *values, int array_len);

Fortran Interface

#include fpapi.h
PAPIF_read_counters(C_LONG_LONG(*) values, C_INT array_len, C_INT check)
PAPIF_accum_counters(C_LONG_LONG(*) values, C_INT array_len, C_INT check)

DESCRIPTION

PAPI_read_counters() copies the event counters into the array values
The counters are reset and left running after the call.

PAPI_accum_counters() adds the event counters into the array values
The counters are reset and left running after the call.

These calls assume an initialized PAPI library and a properly added event set.

ARGUMENTS

*values -- an array to hold the counter values of the counting events

array_len -- the number of items in the *events array

RETURN VALUES

On success, these functions return PAPI_OK.
On error, a non-zero error code is returned.

ERRORS

One or more of the arguments is invalid.
A system or C library call failed inside PAPI, see the errno variable.

EXAMPLES


do_100events();
if (PAPI_read_counters(values, num_hwcntrs) != PAPI_OK)
handle_error(1);
/* values[0] now equals 100 */
do_100events();
if (PAPI_accum_counters(values, num_hwcntrs) != PAPI_OK)
handle_error(1);
/* values[0] now equals 200 */
values[0] = -100;
do_100events();
if (PAPI_accum_counters(values, num_hwcntrs) != PAPI_OK)
handle_error(1);
/* values[0] now equals 0 */

BUGS

These functions have no known bugs.

SEE ALSO

PAPI_start_counters(3), PAPI_set_opt(3), PAPI(3),PAPIF(3)

September, 2004 PAPI Programmer's Reference