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

CONTENTS

Synopsis
Description
Arguments
Return Values
Errors
Examples
Bugs
See Also

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 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);


BUGS

This function has no known bugs.

SEE ALSO

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


PAPI Programmer’s Reference PAPI_set_multiplex (3) September, 2004

  Innovative Computing Laboratory
2001 R&D Winner  
Contact PAPI: papi@cs.utk.edu Computer Science Department
  University of Tennessee