PAPI  5.3.2.0
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
PAPI_set_cmp_domain Class Reference

Set the default counting domain for new event sets bound to the specified component. More...

Detailed Description

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

@param domain one of the following constants as defined in the papi.h header file
@arg PAPI_DOM_USER User context counted
@arg PAPI_DOM_KERNEL  Kernel/OS context counted
@arg PAPI_DOM_OTHER Exception/transient mode counted
@arg PAPI_DOM_SUPERVISOR Supervisor/hypervisor context counted
@arg PAPI_DOM_ALL All above contexts counted
@arg PAPI_DOM_MIN The smallest available context
@arg PAPI_DOM_MAX The largest available context 
@arg PAPI_DOM_HWSPEC Something other than CPU like stuff. Individual components can decode
low order bits for more meaning

@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_domain sets the default counting domain for all new event sets in all threads, and requires an explicit component argument. Event sets that are already in existence are not affected. To change the domain of an existing event set, please see PAPI_set_opt. The reader should note that the domain of an event set affects only the mode in which the counter continues to run. Counts are still aggregated for the current process, and not for any other processes in the system. Thus when requesting PAPI_DOM_KERNEL , the user is asking for events that occur on behalf of the process, inside the kernel.

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 domain 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_domain PAPI_set_granularity PAPI_set_opt PAPI_get_opt

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