PAPI  5.4.0.0
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
PAPI_set_cmp_granularity Class Reference

Set the default counting granularity for eventsets bound to the specified component. More...

Detailed Description

@par C Prototype:
    \#include <papi.h> @n
    int PAPI_set_cmp_granularity( int granularity, int cidx );

@param granularity one of the following constants as defined in the papi.h header file
@arg PAPI_GRN_THR   Count each individual thread
@arg PAPI_GRN_PROC  Count each individual process
@arg PAPI_GRN_PROCG Count each individual process group
@arg PAPI_GRN_SYS   Count the current CPU
@arg PAPI_GRN_SYS_CPU   Count all CPUs individually
@arg PAPI_GRN_MIN   The finest available granularity
@arg PAPI_GRN_MAX   The coarsest available granularity

@param cidx
    An integer identifier for a component. 
    By convention, component 0 is always the cpu component. 
Return values
PAPI_OK
PAPI_EINVALOne or more of the arguments is invalid.
PAPI_ENOCMPThe argument cidx is not a valid component.

PAPI_set_cmp_granularity sets the default counting granularity for all new event sets, and requires an explicit component argument. Event sets that are already in existence are not affected.

To change the granularity of an existing event set, please see PAPI_set_opt. The reader should note that the granularity of an event set affects only the mode in which the counter continues to run.

Example:
int ret;
// Initialize the library
if (ret > 0 && ret != PAPI_VER_CURRENT) {
fprintf(stderr,"PAPI library version mismatch!\n");
exit(1);
}
if (ret < 0) handle_error(ret);
// Set the default granularity for the cpu component
if (ret != PAPI_OK) handle_error(ret);
ret = PAPI_create_eventset(&EventSet);
if (ret != PAPI_OK) handle_error(ret);
*
See Also
PAPI_set_granularity PAPI_set_domain PAPI_set_opt PAPI_get_opt

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