Defines a dynamic phase.
C/C++: TAU_PHASE_CREATE_DYNAMIC(Phase phase, char* or string& function_name, char* or string& type, TauGroup_t group);
Fortran: TAU_PHASE_CREATE_DYNAMIC(integer phase(2), character name(size));
TAU_PHASE_CREATE_DYNAMIC creates a dynamic phase. The name of the timer can be different for each execution.
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_PHASE_CREATE_DYNAMIC(timer, buf, "", TAU_USER); TAU_PHASE_START(timer); printf("Iteration %d\n", i); f1(); TAU_PHASE_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_PHASE_CREATE_DYNAMIC(profiler, cvar) call TAU_PHASE_START(profiler) call F1() call TAU_PHASE_STOP(profiler) return end