PAPI_set_multiplex

Langue: en

Version: September, 2004 (fedora - 01/12/10)

Section: 3 (Bibliothèques de fonctions)

NAME

PAPI_get_multiplex - get the multiplexing status of specified event set PAPI_set_multiplex - convert a standard event set to a multiplexed event set

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_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.

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 multiplexing")
   if (retval == 0) printf("This event set is not enabled for multiplexing")
   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 enabled);
   else if (retval != PAPI_OK) handle_error(retval);
 

BUGS

This function has no known bugs.

SEE ALSO

PAPI_multiplex_init(3),PAPI_set_opt(3),PAPI_create_eventset(3)