Oasis3-MCT
 All Classes Files Functions Variables Macros Pages
Data Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
mod_oasis_timer Module Reference

Performance timer methods. More...

Data Types

type  timer_details
 Storage for timer data. More...
 

Public Member Functions

subroutine, public oasis_timer_init (app, file, nt)
 Initializes the timer methods, called once in an application. More...
 
subroutine, public oasis_timer_start (timer_label, barrier)
 Start a timer. More...
 
subroutine, public oasis_timer_stop (timer_label)
 Stop a timer. More...
 
subroutine, public oasis_timer_print (timer_label)
 Print timers. More...
 

Private Member Functions

subroutine oasis_timer_c2i (tname, tid)
 Convert a timer name to the timer id number. More...
 

Private Attributes

character(len=ic_med) app_name
 
character(len=ic_med) file_name
 
character(len=ic_med) file_hold
 
integer mtimer
 
type(timer_details), dimension(:),
pointer 
timer
 
double precision, dimension(:),
pointer 
sum_ctime
 
double precision, dimension(:),
pointer 
sum_wtime
 
integer, dimension(:), pointer timer_count
 
integer ntimer
 
integer output_unit = 901
 
logical, save single_timer_header
 
character(len=1), parameter t_stopped = ' '
 
character(len=1), parameter t_running = '*'
 

Detailed Description

Performance timer methods.

This is used to measure the time consumed in specific parts of the code. Timers are defined by character strings that are stored in an internal datatype.

Definition at line 39 of file mod_oasis_timer.F90.

Member Function/Subroutine Documentation

subroutine mod_oasis_timer::oasis_timer_c2i ( character(len=*), intent(in)  tname,
integer, intent(out)  tid 
)
private

Convert a timer name to the timer id number.

Parameters
[in]tnametimer name
[out]tidtimer id

Definition at line 660 of file mod_oasis_timer.F90.

subroutine, public mod_oasis_timer::oasis_timer_init ( character (len=*), intent(in)  app,
character (len=*), intent(in)  file,
integer, intent(in)  nt 
)

Initializes the timer methods, called once in an application.

Parameters
[in]appname of application
[in]fileoutput filename
[in]ntnumber of timers

Definition at line 91 of file mod_oasis_timer.F90.

subroutine, public mod_oasis_timer::oasis_timer_print ( character(len=*), intent(in), optional  timer_label)

Print timers.

Parameters
[in]timer_labelif unset, print all timers

Definition at line 221 of file mod_oasis_timer.F90.

subroutine, public mod_oasis_timer::oasis_timer_start ( character(len=*), intent(in)  timer_label,
logical, intent(in), optional  barrier 
)

Start a timer.

Parameters
[in]timer_labeltimer name
[in]barrierflag to barrier this timer

Definition at line 133 of file mod_oasis_timer.F90.

subroutine, public mod_oasis_timer::oasis_timer_stop ( character(len=*), intent(in)  timer_label)

Stop a timer.

Parameters
[in]timer_labeltimer name

Definition at line 177 of file mod_oasis_timer.F90.

Member Data Documentation

character (len=ic_med) mod_oasis_timer::app_name
private

Definition at line 54 of file mod_oasis_timer.F90.

character (len=ic_med) mod_oasis_timer::file_hold
private

Definition at line 58 of file mod_oasis_timer.F90.

character (len=ic_med) mod_oasis_timer::file_name
private

Definition at line 57 of file mod_oasis_timer.F90.

integer mod_oasis_timer::mtimer
private

Definition at line 72 of file mod_oasis_timer.F90.

integer mod_oasis_timer::ntimer
private

Definition at line 78 of file mod_oasis_timer.F90.

integer mod_oasis_timer::output_unit = 901
private

Definition at line 80 of file mod_oasis_timer.F90.

logical, save mod_oasis_timer::single_timer_header
private

Definition at line 81 of file mod_oasis_timer.F90.

double precision, dimension(:), pointer mod_oasis_timer::sum_ctime
private

Definition at line 74 of file mod_oasis_timer.F90.

double precision, dimension(:), pointer mod_oasis_timer::sum_wtime
private

Definition at line 75 of file mod_oasis_timer.F90.

character(len=1), parameter mod_oasis_timer::t_running = '*'
private

Definition at line 83 of file mod_oasis_timer.F90.

character(len=1), parameter mod_oasis_timer::t_stopped = ' '
private

Definition at line 82 of file mod_oasis_timer.F90.

type (timer_details), dimension(:), pointer mod_oasis_timer::timer
private

Definition at line 73 of file mod_oasis_timer.F90.

integer, dimension(:), pointer mod_oasis_timer::timer_count
private

Definition at line 76 of file mod_oasis_timer.F90.


The documentation for this module was generated from the following file: