Cylc version 8.1 is released, and is available for Gadi/OOD/ARE by running
module use /g/data/access/ngm/modules
module load cylc/8.1
See the release notes at Cylc Flow 8.1.0 Released - Cylc / Cylc Announce - Cylc Workflow Engine. Cylc 8 is not supported on accessdev.
Platforms
The following platforms are available to run tasks:
-
gadi_pbs: Jobs submitted to Gadi’s PBS queue. By default tasks will have the PBS flags
-P $PROJECT -l storage=gdata/access -W umask=0022
added, these flags can be overridden using the task’s[[[directives]]]
section. - gadi_background: A gadi node as a background process. If the Cylc server is running on a Gadi login or ARE node this will be the same as localhost, otherwise this will run on one of the Gadi login nodes.
I’d recommend avoiding the localhost platform as it may behave differently based on whether the suite is being run from OOD, ARE, Gadi or the long running servers that are in development. Use gadi_background instead.
Helper macros
Some helper macros are available for your suites for setting up PBS flags. If you find these helpful or think of other macros that could be useful to install centrally please do let me know. The command cylc config PATH
will show you what macros render to.
The macro nci_task_directives()
will compute an appropriate memory request based on the queue and number of cpus:
{% from "ncimacros" import nci_task_directives %}
[[ atmos ]]
inherit = HPC
[[[ directives ]]]
{{ nci_task_directives(
ncpus = (ATM_PROCX * ATM_PROCY + IOS)*OMP,
queue = 'normal',
allow_partial_nodes = False,
) }}
Renders to
[[atmos]]
platform = gadi_pbs
inherit = HPC
[[[directives]]]
-q = normal
-l ncpus = 34
-l mem = 135gb
-l jobfs = 283gb
The macro nci_storage()
can be used to combine storage flags required to run a suite with user-specified storage flags from rose-suite.conf
(it will also automatically add gdata/access+scratch/$PROJECT+gdata/$PROJECT
):
{% from "ncimacros" import nci_storage %}
[[ HPC ]]
platform = gadi_pbs
[[[ directives ]]]
{{ nci_storage(
required = "gdata/ki32",
user = NCI_STORAGE | default
) }}
Renders to
[[HPC]]
platform = gadi_pbs
[[[directives]]]
-l storage = gdata/access+scratch/hc46+gdata/hc46+gdata/ki32