Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

papi_set_cmp_domain(3) [centos man page]

PAPI_set_cmp_domain(3)						       PAPI						    PAPI_set_cmp_domain(3)

NAME
PAPI_set_cmp_domain - Set the default counting domain for new event sets bound to the specified component. SYNOPSIS
Detailed Description @par C Prototype: 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_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!0); 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. Version 5.2.0.0 Tue Jun 17 2014 PAPI_set_cmp_domain(3)

Check Out this Related Man Page

PAPI_get_thr_specific(3)					       PAPI						  PAPI_get_thr_specific(3)

NAME
PAPI_get_thr_specific - Retrieve a pointer to a thread specific data structure. SYNOPSIS
Detailed Description @par Prototype: int PAPI_get_thr_specific( int tag, void **ptr ); @param tag An identifier, the value of which is either PAPI_USR1_TLS or PAPI_USR2_TLS. This identifier indicates which of several data structures associated with this thread is to be accessed. @param ptr A pointer to the memory containing the data structure. @retval PAPI_OK @retval PAPI_EINVAL The @em tag argument is out of range. In C, PAPI_get_thr_specific PAPI_get_thr_specific will retrieve the pointer from the array with index @em tag. There are 2 user available locations and @em tag can be either PAPI_USR1_TLS or PAPI_USR2_TLS. The array mentioned above is managed by PAPI and allocated to each thread which has called PAPI_thread_init. There is no Fortran equivalent function. @par Example: int ret; HighLevelInfo *state = NULL; ret = PAPI_thread_init(pthread_self); if (ret != PAPI_OK) handle_error(ret); // Do we have the thread specific data setup yet? ret = PAPI_get_thr_specific(PAPI_USR1_TLS, (void *) &state); if (ret != PAPI_OK || state == NULL) { state = (HighLevelInfo *) malloc(sizeof(HighLevelInfo)); if (state == NULL) return (PAPI_ESYS); memset(state, 0, sizeof(HighLevelInfo)); state->EventSet = PAPI_NULL; ret = PAPI_create_eventset(&state->EventSet); if (ret != PAPI_OK) return (PAPI_ESYS); ret = PAPI_set_thr_specific(PAPI_USR1_TLS, state); if (ret != PAPI_OK) return (ret); } * See Also: PAPI_register_thread PAPI_thread_init PAPI_thread_id PAPI_set_thr_specific Author Generated automatically by Doxygen for PAPI from the source code. Version 5.2.0.0 Tue Jun 17 2014 PAPI_get_thr_specific(3)
Man Page