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\n", 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)