tau_profile_timer_dynamic(3) [debian man page]
TAU_PROFILE_TIMER_DY(3) TAU Instrumentation API TAU_PROFILE_TIMER_DY(3) NAME
TAU_PROFILE_TIMER_DYNAMIC - Defines a dynamic timer. SYNOPSIS
C/C++: TAU_PROFILE_TIMER_DYNAMIC(Profiler timer, char* or string& function_name, char* or string& type, TauGroup_t group); Fortran: TAU_PROFILE_TIMER_DYNAMIC(integer profiler(2), character name(size)); DESCRIPTION
TAU_PROFILE_TIMER_DYNAMIC operates similar to TAU_PROFILE_TIMER except that the timer is created each time the statement is invoked. This way, the name of the timer can be different for each execution. EXAMPLE
C/C++ : int main(int argc, char **argv) { int i; TAU_PROFILE_TIMER(t,"main()", "", TAU_DEFAULT); TAU_PROFILE_SET_NODE(0); TAU_PROFILE_START(t); for (i=0; i&5; i++) { char buf[32]; sprintf(buf, "Iteration %d", i); TAU_PROFILE_TIMER_DYNAMIC(timer, buf, "", TAU_USER); TAU_PROFILE_START(timer); printf("Iteration %d ", i); f1(); TAU_PROFILE_STOP(timer); } return 0; } Fortran : subroutine ITERATION(val) integer val character(13) cvar integer profiler(2) / 0, 0 / save profiler print *, "Iteration ", val write (cvar,'(a9,i2)') 'Iteration', val call TAU_PROFILE_TIMER_DYNAMIC(profiler, cvar) call TAU_PROFILE_START(profiler) call F1() call TAU_PROFILE_STOP(profiler) return end SEE ALSO
TAU_PROFILE_TIMER(3), TAU_PROFILE_START(3), TAU_PROFILE_STOP(3) 08/31/2005 TAU_PROFILE_TIMER_DY(3)
Check Out this Related Man Page
TAU_PROFILE_SET_NODE(3) TAU Instrumentation API TAU_PROFILE_SET_NODE(3) NAME
TAU_PROFILE_SET_NODE - Informs the measurement system of the node id SYNOPSIS
C/C++: TAU_PROFILE_SET_NODE(int node); Fortran: TAU_PROFILE_SET_NODE(integer node); DESCRIPTION
The TAU_PROFILE_SET_NODE macro sets the node identifier of the executing task for profiling and tracing. Tasks are identified using node, context and thread ids. The profile data files generated will accordingly be named profile.<node>.<context>.<thread>. Note that it is not necessary to call TAU_PROFILE_SET_NODE 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_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) ! 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 SEE ALSO
TAU_PROFILE_SET_CONTEXT(3) 08/31/2005 TAU_PROFILE_SET_NODE(3)