PAPIC:PAPI start counters.3
From PAPIDocs
Jump to: navigation, search


  • PAPI_start_counters - PAPI High Level: start counting hardware events


C Interface

#include <papi.h>
int PAPI_start_counters( int * events, int  array_len );

Fortran Interface

#include "fpapi.h"
PAPIF_start_counters( C_INT(*)  events,  C_INT  array_len,  C_INT  check )


PAPI_start_counters() starts counting the events named in the *events array. This function cannot be called if the counters have already been started. The user must call PAPI_stop_counters() to stop the events explicitly if he/she wants to call this function again. It is the user's responsibility to choose events that can be counted simultaneously by reading the vendor's documentation. The length of the *events array should be no longer than the value returned by PAPI_num_counters().


*events -- an array of codes for events such as PAPI_INT_INS or a native event code

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


PAPI_EINVAL One or more of the arguments is invalid.

PAPI_EISRUN Counters have already been started, you must call PAPI_stop_counters() before you call this function again.

PAPI_ESYS A system or C library call failed inside PAPI, see the errno variable.

PAPI_ENOMEM Insufficient memory to complete the operation.

PAPI_ECNFLCT The underlying counter hardware cannot count this event and other events in the EventSet simultaneously.

PAPI_ENOEVNT The PAPI preset is not available on the underlying hardware.


/* Start counting events */
if (PAPI_start_counters(Events, num_hwcntrs) != PAPI_OK)


This function has no known bugs.

See Also

PAPIF(3), PAPI(3), PAPI_stop_counters(3), PAPI_add_event(3), PAPI_create_eventset(3)