table of contents
PAPI_add_named_event(3) | PAPI | PAPI_add_named_event(3) |
NAME¶
PAPI_add_named_event - add PAPI preset or native hardware event by name to an EventSet
SYNOPSIS¶
Detailed Description¶
C Interface:
#include <papi.h>
int PAPI_add_named_event( int EventSet, const char *EventName );
int PAPI_add_named_event( int EventSet, const char *EventName );
PAPI_add_named_event adds one event to a PAPI EventSet.
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 the
papi_native_avail utility in the PAPI distribution.
Parameters
EventSet An integer handle for a PAPI Event Set as
created by PAPI_create_eventset.
EventCode A defined event such as PAPI_TOT_INS.
EventCode A defined event such as PAPI_TOT_INS.
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_ENOINIT The PAPI library has not been initialized.
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.
PAPI_EINVAL One or more of the arguments is invalid.
PAPI_ENOINIT The PAPI library has not been initialized.
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:
char EventName = "PAPI_TOT_INS"; 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_named_event( EventSet, EventName ) != PAPI_OK ) handle_error( 1 ); // Add native event PM_CYC to EventSet if ( PAPI_add_named_event( EventSet, "PM_CYC" ) != PAPI_OK ) handle_error( 1 );
See also
PAPI_add_event
PAPI_query_named_event
PAPI_remove_named_event
PAPI_query_named_event
PAPI_remove_named_event
Author¶
Generated automatically by Doxygen for PAPI from the source code.
Fri Nov 17 2023 | Version 6.0.0.0 |