Cylc is a general purpose workflow engine that also orchestrates cycling systems very efficiently. It is used in production weather, climate, and environmental forecasting on HPC, but is not specialized to those domains.

Cylc is an active Open Source project on GitHub.
See Cylc Publications and Reports below.

Next Release:  ()

0% 100%

Cylc is a decentralised, distributed, DAG / DCG scheduler.

Scheduler
Cylc can schedule inter-dependent collections of tasks (aka workflows) to run on platforms of your choice.
Decentralised
Cylc employs a decentralised architecture where each workflow execution is fully independent. This means that workflows are isolated for robustness and Cylc deployments scale horizontally.
Distributed
Cylc workflows can be distributed across a pool of servers to facilitate large multi-user setups. Workflows can distribute their workload across multiple platforms.
DAG
Cylc can schedule Directed Acyclic Graphs of tasks (i.e. workflows which do not cycle) similar to other tools.
DCG
Cylc's unique cycling model allows it to run cyclic workflows too. This makes Cylc especially powerful for cases where later repetitions of tasks depend on the output of earlier instances. Tasks can repeat on different intervals within the same workflow and complex inter-cycle dependencies can be defined between them.

Cylc Does Cycling Properly

Cylc unwinds the cycle loop to get a dependency graph with no barrier between cycles. This allows interleaved cycles for:

  • Fast catch-up from delays
  • Sustained high throughput off the clock
  • Seamless transitions between fast catch-up and clock-limited real-time scheduling

Powerful User Interfaces

Alongside a powerful command line interface, Cylc has a web-based GUI for monitoring, controlling and analysing workflows.

Jupyter Lab Integration

Optional Jupyter Lab integration allows you to deploy the Cylc GUI and Jupyter Lab together, providing an all in one research platform ready to be deployed to on premise or cloud systems.

Jupyter Hub Integration

Deploy the Cylc GUI via Jupyter Hub to unlock institution-scale multi-user deployments with fine-grained authorisation allowing users to be granted permissions to view and control workflows running under other user accounts.

Why Use Cylc?

Production Ready Scaling Powerful UIs Ease of Use Multi-User Installations Advanced Scheduling Resilience

Publications and Reports

If you use Cylc please cite it in your publications and let us know if your site can be listed on this website.

Workflow Automation for Cycling Systems: The Cylc Workflow Engine
H. Oliver et al
Computing in Science & Engineering Vol 21, Issue 4, July/Aug 2019. DOI: 10.1109/MCSE.2019.2906593
DOI: 10.1109/MCSE.2019.2906593 DOI 10.1109/MCSE.2019.2906593

Cylc: A Workflow Engine for Cycling Systems
Oliver et al., (2018).
Journal of Open Source Software, 3(27), 737. DOI: 10.21105/joss.00737

Citable DOI for Cylc code releases.

Old (2017): Cylc response to Assessment Report on Autosubmit, Cylc and ecFlow