PAPI_set_cmp_granularity(3)

NAME
PAPI_set_cmp_granularity - Set the default counting granularity for eventsets bound to the specified component.

SYNOPSIS

Detailed Description

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

Parameters
    granularity one of the following constants as defined in the papi.h header file
    •   PAPI_GRN_THR Count each individual thread
    •   PAPI_GRN_PROC Count each individual process
    •   PAPI_GRN_PROCG Count each individual process group
    •   PAPI_GRN_SYS Count the current CPU
    •   PAPI_GRN_SYS_CPU Count all CPUs individually
    •   PAPI_GRN_MIN The finest available granularity
    •   PAPI_GRN_MAX The coarsest available granularity
    cidx An integer identifier for a component. By convention, component 0 is always the cpu component.

Return values
    PAPI_OK
    PAPI_EINVAL One or more of the arguments is invalid.
    PAPI_ENOCMP The 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
    ret = PAPI_library_init(PAPI_VER_CURRENT);
    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
    ret = PAPI_set_cmp_granularity(PAPI_GRN_PROC, 0);
    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

Author
Generated automatically by Doxygen for PAPI from the source code.