PAPI  5.3.0.0
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
PAPI_remove_events Class Reference

Remove an array of hardware event codes from a PAPI event set. More...

Detailed Description

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 papi_avail utility 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 papi_native_avail in the PAPI distribution. It should be noted that PAPI_remove_events can partially succeed, exactly like PAPI_add_events.

C Prototype:
#include <papi.h>
int PAPI_remove_events( int EventSet, int * EventCode, int number );
Parameters
EventSetan integer handle for a PAPI event set as created by PAPI_create_eventset
*Eventsan array of defined events
numberan integer indicating the number of events in the array *EventCode
Return values
Positiveinteger The number of consecutive elements that succeeded before the error.
PAPI_EINVALOne or more of the arguments is invalid.
PAPI_ENOEVSTThe EventSet specified does not exist.
PAPI_EISRUNThe EventSet is currently counting events.
PAPI_ECNFLCTThe underlying counter hardware can not count this event and other events in the EventSet simultaneously.
PAPI_ENOEVNTThe PAPI preset is not available on the underlying hardware.
Example:
int EventSet = PAPI_NULL;
int Events[] = {PAPI_TOT_INS, PAPI_FP_OPS};
int ret;
// Create an empty EventSet
ret = PAPI_create_eventset(&EventSet);
if (ret != PAPI_OK) handle_error(ret);
// Add two events to our EventSet
ret = PAPI_add_events(EventSet, Events, 2);
if (ret != PAPI_OK) handle_error(ret);
// Start counting
ret = PAPI_start(EventSet);
if (ret != PAPI_OK) handle_error(ret);
// Stop counting, ignore values
ret = PAPI_stop(EventSet, NULL);
if (ret != PAPI_OK) handle_error(ret);
// Remove event
ret = PAPI_remove_events(EventSet, Events, 2);
if (ret != PAPI_OK) handle_error(ret);
*
Bug:
The last argument should be a pointer so the count can be returned on partial success in addition to a real error code.
@see PAPI_cleanup_eventset PAPI_destroy_eventset PAPI_event_name_to_code 
    PAPI_presets PAPI_add_event PAPI_add_events

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