Man page - papi_attach(3)
Packages contains this manual
Manual
PAPI_attach
NAMESYNOPSIS
Detailed Description
Author
NAME
PAPI_attach - Attach PAPI event set to the specified thread id.
SYNOPSIS
Detailed Description
C Interface:
#include <
papi.h
>
int
PAPI_attach( int EventSet, unsigned long tid
)
;
PAPI_attach 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.
Parameters
EventSet
An integer
handle for a PAPI EventSet as created by
PAPI_create_eventset
.
tid
A thread id as obtained from, for example,
PAPI_list_threads
or
PAPI_thread_id
.
Return values
PAPI_ECMP
This feature
is unsupported on this component.
PAPI_EINVAL
One or more of the arguments is invalid.
PAPI_ENOEVST
The event set specified does not exist.
PAPI_EISRUN
The event set is currently counting
events.
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.