TAU_REGISTER_THREAD

Langue: en

Version: 08/31/2005 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

TAU_REGISTER_THREAD - Register a thread with the profiling system

SYNOPSIS

C/C++:

TAU_REGISTER_THREAD(void);

Fortran:

TAU_REGISTER_THREAD(void);

DESCRIPTION

To register a thread with the profiling system, invoke the TAU_REGISTER_THREAD macro in the run method of the thread prior to executing any other TAU macro. This sets up thread identifiers that are later used by the instrumentation system.

EXAMPLE

C/C++ :

 void * threaded_func(void *data) {
   TAU_REGISTER_THREAD();
   { /**** NOTE WE START ANOTHER BLOCK IN THREAD */
     TAU_PROFILE_TIMER(tautimer, "threaded_func()", "int ()", 
                       TAU_DEFAULT);
     TAU_PROFILE_START(tautimer);
     work(); /* work done by this thread */
     TAU_PROFILE_STOP(tautimer);
   }
   return NULL;
 }
     
 

Fortran :

 call TAU_REGISTER_THREAD()
     
 

CAVEAT

PDT based tau_instrumentor does not insert TAU_REGISTER_THREAD calls, they must be inserted manually