TAU_REGISTER_THREAD(3)

TAU_REGISTER_THREAD3

Register a thread with the profiling system

Usage

C/C++:

TAU_REGISTER_THREAD(void);

Fortran:

TAU_REGISTER_THREAD(void);

Overview

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.

Examples

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

Releases

Unchanged in 5 releases since Debian 4.0 (Etch).

  1. 4.0–9

From tau 2.17.3.1.dfsg-4.2 in Debian 9 (Stretch). Parsed by carta from the page's man source.