Man page - papi_add_events(3)
Packages contains this manual
Manual
PAPI_add_events
NAMESYNOPSIS
Detailed Description
Author
NAME
PAPI_add_events - add multiple PAPI presets or native hardware events to an event set
SYNOPSIS
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
EventSet
An integer
handle for a PAPI Event Set as created by
PAPI_create_eventset
.
*EventCode
An array of defined events.
number
An 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-Integer
The
number of consecutive elements that succeeded before the
error.
PAPI_EINVAL
One or more of the arguments is invalid.
PAPI_ENOMEM
Insufficient memory to complete the
operation.
PAPI_ENOEVST
The event set specified does not exist.
PAPI_EISRUN
The event set is currently counting events.
PAPI_ECNFLCT
The underlying counter hardware can not
count this event and other events in the event set
simultaneously.
PAPI_ENOEVNT
The PAPI preset is not available on the
underlying hardware.
PAPI_EBUG
Internal error, please send mail to the
developers.
Examples:
int EventSet =
PAPI_NULL;
unsigned int native = 0x0;
if ( PAPI_create_eventset( &EventSet ) != PAPI_OK )
handle_error( 1 );
// Add Total Instructions Executed to our EventSet
if ( PAPI_add_event( EventSet, PAPI_TOT_INS ) != PAPI_OK )
handle_error( 1 );
// Add native event PM_CYC to EventSet
if ( PAPI_event_name_to_code( "PM_CYC",
&native ) != PAPI_OK )
handle_error( 1 );
if ( PAPI_add_event( EventSet, native ) != PAPI_OK )
handle_error( 1 );
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
Author
Generated automatically by Doxygen for PAPI from the source code.