job_manage Module

FIXME : Add documentation


Contents


Variables

Type Visibility Attributes Name Initial
integer, public :: njobs
logical, private, parameter :: debug = .false.
real, private :: wall_clock_initial_time = 0.
logical, private :: checktime_initialized = .false.

Functions

public function timer_local()

Returns CPU time in seconds. Currently just a thin wrapper to method of the same name in mp. In the future we probably want to remove the method here and change the relevant use statements.

Arguments

None

Return Value real


Subroutines

public subroutine time_message(lprint, targ, chmessage)

This routine counts elapsed time between two calls. Currently just a thin wrapper to method of the same name in mp. In the future we probably want to remove the method here and change the relevant use statements.

Arguments

Type IntentOptional Attributes Name
logical, intent(in) :: lprint
real, intent(inout) :: targ(2)
character(len=*), intent(in) :: chmessage

public subroutine job_fork(n_ensembles)

FIXME : Add documentation We need to set this for the group proc0, as it is previously only set for the global proc0

Arguments

Type IntentOptional Attributes Name
integer, intent(in), optional :: n_ensembles

public subroutine checkstop(exit, exit_reason, list)

Check whether the stop file .stop is present, and if so trigger exit.

Arguments

Type IntentOptional Attributes Name
logical, intent(inout) :: exit
type(exit_code), intent(inout) :: exit_reason
logical, intent(in), optional :: list

public subroutine init_checktime()

FIXME : Add documentation

Arguments

None

public subroutine checktime(avail_time, exit, margin_in)

Check whether elapsed run time is within a 5 minutes of exceeding the available CPU time, and if so trigger the code exit.

Arguments

Type IntentOptional Attributes Name
real, intent(in) :: avail_time
logical, intent(inout) :: exit
real, intent(in), optional :: margin_in