PAPI 7.1.0.0
Loading...
Searching...
No Matches
PAPI_add_events Class Reference

add multiple PAPI presets or native hardware events to an event set More...

Detailed Description

C Interface:
#include <papi.h>
int PAPI_add_events( int EventSet, int * EventCodes, int number );

PAPI_add_event adds one event to a PAPI Event Set. PAPI_add_events does the same, but for an array of events.
A hardware event can be either a PAPI preset or a native hardware event code. For a list of PAPI preset events, see PAPI_presets or run the avail test case in the PAPI distribution. PAPI presets can be passed to PAPI_query_event to see if they exist on the underlying architecture. For a list of native events available on current platform, run native_avail test case in the PAPI distribution. For the encoding of native events, see PAPI_event_name_to_code to learn how to generate native code for the supported native event on the underlying architecture.

Parameters
EventSetAn integer handle for a PAPI Event Set as created by PAPI_create_eventset.
*EventCodeAn array of defined events.
numberAn integer indicating the number of events in the array *EventCode. It should be noted that PAPI_add_events can partially succeed, exactly like PAPI_remove_events.
Return values
Positive-IntegerThe number of consecutive elements that succeeded before the error.
PAPI_EINVALOne or more of the arguments is invalid.
PAPI_ENOMEMInsufficient memory to complete the operation.
PAPI_ENOEVSTThe event set specified does not exist.
PAPI_EISRUNThe event set is currently counting events.
PAPI_ECNFLCTThe underlying counter hardware can not count this event and other events in the event set simultaneously.
PAPI_ENOEVNTThe PAPI preset is not available on the underlying hardware.
PAPI_EBUGInternal error, please send mail to the developers.
Examples:
unsigned int native = 0x0;
handle_error( 1 );
// Add Total Instructions Executed to our EventSet
handle_error( 1 );
// Add native event PM_CYC to EventSet
if ( PAPI_event_name_to_code( "PM_CYC", &native ) != PAPI_OK )
handle_error( 1 );
handle_error( 1 );
add PAPI preset or native hardware event to an event set
Create a new empty PAPI EventSet.
Convert a name to a numeric hardware event code.
#define PAPI_OK
Definition: f90papi.h:73
#define PAPI_NULL
Definition: f90papi.h:78
#define PAPI_TOT_INS
Definition: f90papi.h:317
static int EventSet
Definition: init_fini.c:8
static int native
Bug:
The vector function should take a pointer to a length argument so a proper return value can be set upon partial success.
See also
PAPI_cleanup_eventset
PAPI_destroy_eventset
PAPI_event_code_to_name
PAPI_remove_events
PAPI_query_event
PAPI_presets
PAPI_native
PAPI_remove_event

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