Scroll to navigation

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\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