Pursuing & supporting
reproducible workflows
for all with
Oliver Sanders & Sadie Bartholomew
Modelling Infrastructure Support
Systems team,
Met Office
This is a simple workflow
This is a repeating workflow
This is a Cylc cycling workflow
This is an infinite cycling workflow
Cylc provides a moving window on an infinite workflow
Workflows with multiple cycle intervals
Arbitrary (integer) cycling | |
Real time cycling | |
Simulated time cycling | |
Externally driven cycling |
This is a simple workflow definition
This is a Cycling workflow definition
System architecture
Submit jobs with:
Live monitoring via GUI or CLI | |
Manual intervention with running workflows supported | |
Automatically re-submit failed jobs |
Usage & the Cylc Community
International
use []
& development [
]
Example: weather forecasting
research
real-time
cycling
seamless
(meta-scheduling)
transition
simulated
time
cycling
operations
At the
Met Office workflows are often huge!
(by numbers of tasks, dependencies, recurrences...)Workflow design choices include:
single monolithic workflow | modularity
|
multiple connected workflows (inter-workflow triggering) |
coarse | task granularity
|
fine |
via in-built parameterisation | task generation
|
via templating (Jinja2) |
runtime inheritance: |
hierarchy branching, levels & interconnections |
The Future of Cylc
Same concept, revised tech stack:
Scheduling & runtime |
![]() 2
|
⟶ |
![]() 3
|
Data & network layer |
![]() |
⟶ |
![]() |
Web framework |
![]() |
⟶ |
![]() |
Front-end |
![]() |
⟶ |
![]() ![]() |
Documentation |
![]() |
⟶ |
![]() |
Cylc development is supported by: