PAPIC:PAPI create eventset.3
From PAPIDocs
Jump to: navigation, search


  • PAPI_create_eventset - create an EventSet


C Interface

#include <papi.h>
PAPI_create_eventset (int * EventSet );

Fortran Interface

#include fpapi.h
PAPIF_create_eventset(C_INT  EventSet,  C_INT  check )


PAPI_create_eventset() creates a new EventSet pointed to by EventSet, which must be initialized to PAPI_NULL before calling this routine. The user may then add hardware events to the event set by calling PAPI_add_event (3) or similar routines. NOTE: PAPI-C uses a late binding model to bind EventSets to components. When an EventSet is first created it is not bound to a component. This will cause some API calls that modify EventSet options to fail. An EventSet can be bound to a component explicitly by calling PAPI_assign_eventset_component (3) or implicitly by calling PAPI_add_event (3) or similar routines.


EventSet -- Address of an integer location to store the new EventSet handle


PAPI_EINVAL The argument handle has not been initialized to PAPI_NULL or the argument is a NULL pointer.

PAPI_ENOMEM Insufficient memory to complete the operation.


int EventSet = PAPI_NULL;
if (PAPI_create_eventset(&EventSet) != PAPI_OK)
/* Add Total Instructions Executed to our EventSet */
if (PAPI_add_event(EventSet, PAPI_TOT_INS) != PAPI_OK)


This function has no known bugs.

See Also

PAPI_add_event(3), PAPI_assign_eventset_component(3), PAPI_destroy_eventset(3), PAPI_cleanup_eventset(3)