PAPI_add_events(3)

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.