PAPI_get_multiplex man page

PAPI_get_multiplex — Get the multiplexing status of specified event set.

Detailed Description

C Interface:

#include <papi.h>
int PAPI_get_multiplex( int EventSet );

Fortran Interface:

#include fpapi.h
PAPIF_get_multiplex( C_INT EventSet, C_INT check )


EventSet an integer handle for a PAPI event set as created by PAPI_create_eventset

Return values:

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.

PAPI_get_multiplex tests the state of the PAPI_MULTIPLEXING flag in the specified event set, returning TRUE if a PAPI event set is multiplexed, or FALSE if not.


int EventSet = PAPI_NULL;
int ret;
// Create an empty EventSet
ret = PAPI_create_eventset(&EventSet);
if (ret != PAPI_OK) handle_error(ret);

// Bind it to the CPU component
ret = PAPI_assign_eventset_component(EventSet, 0);
if (ret != PAPI_OK) handle_error(ret);

// Check  current multiplex status
ret = PAPI_get_multiplex(EventSet);
if (ret == TRUE) printf("This event set is ready for multiplexing0&.")
if (ret == FALSE) printf("This event set is not enabled for multiplexing0&.")
if (ret < 0) handle_error(ret);

// Turn on multiplexing
ret = PAPI_set_multiplex(EventSet);
if ((ret == PAPI_EINVAL) && (PAPI_get_multiplex(EventSet) == TRUE))
  printf("This event set already has multiplexing enabled0);
else if (ret != PAPI_OK) handle_error(ret);

See also:





Generated automatically by Doxygen for PAPI from the source code.


PAPI Version Wed Sep 14 2016