Name
TAU_PHASE_CREATE_STATIC — Defines a static phase.
Synopsis
C/C++:
TAU_PHASE_CREATE_STATIC( |
phase, | |
| function_name, | ||
| type, | ||
group);
|
| Phase | phase; |
| char* or string& | function_name; |
| char* or string& | type; |
| TauGroup_t | group; |
Fortran:
TAU_PHASE_CREATE_STATIC( |
phase, | |
name);
|
| integer | phase(2); |
| character | name(size); |
Description
TAU_PHASE_CREATE_STATIC creates a static phase.
Static phases (and timers) are more efficient than dynamic ones because the
function registration only takes place once.
Example
C/C++ :
int f2(void)
{
TAU_PHASE_CREATE_STATIC(t2,"IO Phase", "", TAU_USER);
TAU_PHASE_START(t2);
input();
output();
TAU_PHASE_STOP(t2);
return 0;
}Fortran :
subroutine F2() integer phase(2) / 0, 0 / save phase call TAU_PHASE_CREATE_STATIC(phase,'IO Phase') call TAU_PHASE_START(phase) call INPUT() call OUTPUT() call TAU_PHASE_STOP(phase) end
>Python:
import pytau
ptr = pytau.phase("foo")
pytau.start(ptr)
foo(2)
pytau.stop(ptr)