Scroll to navigation

PAPI_detach(3) PAPI PAPI_detach(3)

NAME

PAPI_detach -

Detach PAPI event set from previously specified thread id and restore to executing thread.

SYNOPSIS

Detailed Description

@par C Interface:
int PAPI_detach( int  EventSet, unsigned long  tid );
PAPI_detach is a wrapper function that calls PAPI_set_opt to allow PAPI to 
monitor performance counts on a thread other than the one currently executing. 
This is sometimes referred to as third party monitoring. 
PAPI_attach connects the specified EventSet to the specified thread;
PAPI_detach breaks that connection and restores the EventSet to the 
original executing thread. 
@param EventSet 

An integer handle for a PAPI EventSet as created by PAPI_create_eventset. @param tid
A thread id as obtained from, for example, PAPI_list_threads or PAPI_thread_id. @retval PAPI_ECMP
This feature is unsupported on this component. @retval PAPI_EINVAL
One or more of the arguments is invalid. @retval PAPI_ENOEVST
The event set specified does not exist. @retval PAPI_EISRUN
The event set is currently counting events. @par Examples:

*   int EventSet = PAPI_NULL;
*   unsigned long pid;
*   pid = fork( );
*   if ( pid <= 0 )
*   exit( 1 );
*   if ( PAPI_create_eventset( &EventSet ) != PAPI_OK )
*   exit( 1 );
*   // Add Total Instructions Executed to our EventSet
*   if ( PAPI_add_event( EventSet, PAPI_TOT_INS ) != PAPI_OK )
*   exit( 1 );
*   // Attach this EventSet to the forked process
*   if ( PAPI_attach( EventSet, pid ) != PAPI_OK )
*   exit( 1 );
*   

See Also:

PAPI_set_opt
PAPI_list_threads
PAPI_thread_id
PAPI_thread_init

Author

Generated automatically by Doxygen for PAPI from the source code.

Thu Feb 27 2020 Version 6.0.0.0