PAPI_start Class Reference

Start counting hardware events in an event set. More...

Detailed Description

C Interface:
#include <papi.h>
int PAPI_start( int EventSet );
EventSet -- an integer handle for a PAPI event set as created by PAPI_create_eventset
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 EventSet specified does not exist.
PAPI_EISRUN -- The EventSet is currently counting events.
PAPI_ECNFLCT -- The underlying counter hardware can not count this event and other events in the EventSet simultaneously.
PAPI_ENOEVNT -- The PAPI preset is not available on the underlying hardware.

PAPI_start starts counting all of the hardware events contained in the previously defined EventSet. All counters are implicitly set to zero before counting. Assumes an initialized PAPI library and a properly added event set.

  int EventSet = PAPI_NULL;
  long long values[2];
  int ret;
  ret = PAPI_create_eventset(&EventSet);
  if (ret != PAPI_OK) handle_error(ret);
  // Add Total Instructions Executed to our EventSet
  ret = PAPI_add_event(EventSet, PAPI_TOT_INS);
  if (ret != PAPI_OK) handle_error(ret);
  // Start counting
  ret = PAPI_start(EventSet);
  if (ret != PAPI_OK) handle_error(ret);
  ret = PAPI_stop(EventSet, values);
  if (ret != PAPI_OK) handle_error(ret);
See also:
PAPI_create_eventset PAPI_add_event PAPI_stop

The documentation for this class was generated from the following file:

Generated on 17 Nov 2016 for PAPI by  doxygen 1.6.1