papi_set_multiplex(3) - Linux man page
Name
PAPI_get_multiplex - get the multiplexing status of specified event set PAPI_set_multiplex - convert a standard event set to a multiplexed eventset
Synopsis
C Interface#include <papi.h>int PAPI_get_multiplex(int EventSet);int PAPI_set_multiplex(int EventSet);Fortran Interface
#include "fpapi.h"PAPIF_get_multiplex(C_INT EventSet, C_INT check)PAPIF_set_multiplex(C_INT EventSet, C_INT check)
Description
PAPI_set_multiplex converts a standard PAPI event set created by a call to PAPI_create_eventset() into an event set capable of handling multiplexed events. This must be done after calling PAPI_multiplex_init() , but prior to calling PAPI_start(). Events can be added to an event set either before or after converting it into a multiplexed set, but the conversion must be done prior to using it as a multiplexed set.
Arguments
EventSet -- an integer handle for a PAPI event set as created by papi_create_eventset(3)Return Values
PAPI_get_multiplex returns either TRUE (positive non-zero) if multiplexing is enabled for this event set, FALSE (zero) if multiplexing is not enabled, or PAPI_ENOEVST if the specified event set cannot be found.On success, PAPI_get_multiplex returns PAPI_OK. On error, a non-zero error code is returned, as described below.
Errors
- PAPI_EINVAL
- One or more of the arguments is invalid, or the EventSet is already multiplexed.
- PAPI_ENOEVST
- The EventSet specified does not exist.
- PAPI_EISRUN
- The EventSet is currently counting events.
- PAPI_ENOMEM
- Insufficient memory to complete the operation.
Examples
retval = PAPI_get_multiplex(EventSet);
if (retval > 0) printf("This event set is ready for multiplexing0")
if (retval == 0) printf("This event set is not enabled for multiplexing0")
if (retval < 0) handle_error(retval);
retval = PAPI_set_multiplex(EventSet);
if ((retval == PAPI_EINVAL) && (PAPI_get_multiplex(EventSet) > 0))
printf("This event set already has multiplexing enabled0);
else if (retval != PAPI_OK) handle_error(retval);