Name
TAU_PROFILE_SET_CONTEXT — Informs the measurement system of the context id
Synopsis
C/C++:
TAU_PROFILE_SET_CONTEXT(
context)
;
int context;
Fortran:
TAU_PROFILE_SET_CONTEXT(
context)
;
integer context;
Description
The TAU_PROFILE_SET_CONTEXT
macro sets the context
identifier of the executing task for profiling and tracing. Tasks are
identified using context, context and thread ids. The profile data files
generated will accordingly be named
profile.<context>.<context>.<thread>. Note that it is not
necessary to call TAU_PROFILE_SET_CONTEXT
when using the
TAU MPI wrapper library.
Example
C/C++ :
int main (int argc, char **argv) { int ret, i; pthread_attr_t attr; pthread_t tid; TAU_PROFILE_TIMER(tautimer,"main()", "int (int, char **)", TAU_DEFAULT); TAU_PROFILE_START(tautimer); TAU_PROFILE_INIT(argc, argv); TAU_PROFILE_SET_NODE(0); TAU_PROFILE_SET_CONTEXT(1); /* ... */ TAU_PROFILE_STOP(tautimer); return 0; }
Fortran :
PROGRAM SUM_OF_CUBES integer profiler(2) / 0, 0 / save profiler INTEGER :: H, T, U call TAU_PROFILE_INIT() call TAU_PROFILE_TIMER(profiler, 'PROGRAM SUM_OF_CUBES') call TAU_PROFILE_START(profiler) call TAU_PROFILE_SET_NODE(0) call TAU_PROFILE_SET_CONTEXT(1) ! This program prints all 3-digit numbers that ! equal the sum of the cubes of their digits. DO H = 1, 9 DO T = 0, 9 DO U = 0, 9 IF (100*H + 10*T + U == H**3 + T**3 + U**3) THEN PRINT "(3I1)", H, T, U ENDIF END DO END DO END DO call TAU_PROFILE_STOP(profiler) END PROGRAM SUM_OF_CUBES