PAPI_set_granularity Class Reference

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

Detailed Description

C Prototype:
#include <papi.h>
int PAPI_set_granularity( int granularity );
-- 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
Return values:
PAPI_EINVAL One or more of the arguments is invalid.

PAPI_set_granularity sets the default counting granularity for all new event sets created by PAPI_create_eventset. This call implicitly sets the granularity for the cpu component (component 0) and is included to preserve backward compatibility.

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");
if (ret < 0) handle_error(ret);

// Set the default granularity for the cpu component
ret = PAPI_set_granularity(PAPI_GRN_PROC);
if (ret != PAPI_OK) handle_error(ret);
ret = PAPI_create_eventset(&EventSet);
if (ret != PAPI_OK) handle_error(ret);
See also:
PAPI_set_cmp_granularity PAPI_set_domain PAPI_set_opt PAPI_get_opt

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

Generated on 17 Nov 2016 for PAPI by  doxygen 1.6.1