Man page - papi_set_cmp_domain(3)
Packages contains this manual
Manual
PAPI_set_cmp_domain
NAMESYNOPSIS
Detailed Description
Author
NAME
PAPI_set_cmp_domain - Set the default counting domain for new event sets bound to the specified component.
SYNOPSIS
Detailed Description
C Prototype:
#include <
papi.h
>
int
PAPI_set_cmp_domain( int domain, int cidx )
;
Parameters
domain one of the following constants as defined in the papi.h header file
|
• |
PAPI_DOM_USER User context counted |
||
|
• |
PAPI_DOM_KERNEL Kernel/OS context counted |
||
|
• |
PAPI_DOM_OTHER Exception/transient mode counted |
||
|
• |
PAPI_DOM_SUPERVISOR Supervisor/hypervisor context counted |
||
|
• |
PAPI_DOM_ALL All above contexts counted |
||
|
• |
PAPI_DOM_MIN The smallest available context |
||
|
• |
PAPI_DOM_MAX The largest available context |
||
|
• |
PAPI_DOM_HWSPEC Something other than CPU like stuff. Individual components can decode low order bits for more meaning |
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_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
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 domain for the cpu component
ret = PAPI_set_cmp_domain(PAPI_DOM_KERNEL,0);
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
Author
Generated automatically by Doxygen for PAPI from the source code.