Documentation for module timings

Timing routines for accounting

source: timings.F
Loading...

public Subroutines/Functions:

adds the given timer_env to the top of the stack
FUNCTION
get_timer_env
returns the current timer env from the stack
SUBROUTINE
print_stack (unit_nr)
Print current routine stack
SUBROUTINE
rm_timer_env
removes the current timer env from the stack
releases the given timer env
retains the given timer env
Start timer
End timer
Registers handlers with base_hooks.F
Set routine tracer

SUBROUTINEadd_timer_env(timer_env)

adds the given timer_env to the top of the stack

Arguments:
OPTIONAL, POINTER
:: timer_env ...

FUNCTIONget_timer_env()

returns the current timer env from the stack

Return Value ::

SUBROUTINErm_timer_env()

removes the current timer env from the stack

SUBROUTINEtimer_env_release(timer_env)

releases the given timer env

Arguments:
POINTER
:: timer_env the timer env to release

SUBROUTINEtimer_env_retain(timer_env)

retains the given timer env

Arguments:
POINTER
:: timer_env the timer env to retain

SUBROUTINEtimeset_handler(routinen, handle)

Start timer

Arguments:
CHARACTER(*),
INTENT(in)
:: routinen ...
INTEGER,
INTENT(out)
:: handle ...

SUBROUTINEtimestop_handler(handle)

End timer

Arguments:
INTEGER,
INTENT(in)
:: handle ...

SUBROUTINEtimings_register_hooks()

Registers handlers with base_hooks.F

SUBROUTINEtimings_setup_tracing(trace_max, unit_nr, trace_str, routine_names)

Set routine tracer

Arguments:
INTEGER,
INTENT(in)
:: trace_max maximum number of calls reported per routine. Setting this to zero disables tracing.
INTEGER,
INTENT(in)
:: unit_nr output unit used for printing the trace-messages
CHARACTER(13),
INTENT(in)
:: trace_str short info-string which is printed along with every message
INTENT(in),
OPTIONAL
:: routine_names(:) List of routine-names. If provided only these routines will be traced. If not present all routines will traced.