Table 2.
WfMS | Remarks | |
---|---|---|
Language | Execution engine | |
Swift/T | Complete WfMS, supporting conditionals, loops and nested logic | |
Nextflow (DSL-1, DSL-2) | ||
CWL | cwltool† | The official reference implementation of an execution engine for the complete CWL standard33; no cluster or cloud support |
arvados†(1.0, 1.1, 1.2) | Most feature-rich CWL runner, albiet with tedious setup | |
toil-cwl-runner†(1.0.1) | Optimized for cloud environments, less stable in batch environments (Section Scalability) | |
cwl airflow†(1.1) | Works with celery and Kubernetes clusters, not readily with HPC CRMs | |
REANA†(Documentation missing) | Cloud-optimized platform. For HPC, only CERN Slurm and HTcondor are supported | |
Cromwell (1.0) | Supports CWL workflows via WOM, with comparable performance in both languages (Section Scalability) | |
cwl-tes (1.0) | Partial implementation at present, with tedious setup. GA4GH TES API compatible | |
rabix executor (sbg:draft-2, 1.0) | Single node local executor is no longer supported by the original developer team at Seven Bridges | |
WDL | Cromwell (draft-2, 1.0) | De facto standard for executing WDL workflows. Support for nested loops is version-dependent |
toil-wdl-runner (draft-2) | No support for modularity or nesting of loops and conditionals. Support for batch systems is also rudimentary | |
miniWDL (draft-2, 1.0) | No cluster or cloud support. Includes Cromwell wrapper |
Any given feature of a workflow language can be assumed supported by the executor, unless we note otherwise. Supported language versions are in parentheses for each executor. Italics indicates engines we thoroughly examined.
†These are listed as production-ready engines in the official CWL website in July 2021. The rest are listed as partial implementations.