NAME

PAPI_read_counters - PAPI High Level: read and reset counters

PAPI_accum_counters - PAPI High Level: accumulate and reset counters

CONTENTS

Synopsis
Description
Arguments
Return Values
Errors
Examples
Bugs
See Also

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

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.

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)


PAPI Programmer’s Reference PAPI_read_counters (3) September, 2004

  Innovative Computing Laboratory
2001 R&D Winner  
Computer Science Department
  University of Tennessee