Scroll to navigation

TAU_PHASE_CREATE_DYN(3) TAU Instrumentation API TAU_PHASE_CREATE_DYN(3)

NAME

TAU_PHASE_CREATE_DYNAMIC - Defines a dynamic phase.

SYNOPSIS

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));

DESCRIPTION

TAU_PHASE_CREATE_DYNAMIC creates a dynamic phase. 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_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

SEE ALSO

TAU_PHASE_CREATE_STATIC(3), TAU_PHASE_START(3), TAU_PHASE_STOP(3)

08/31/2005