Parsl+CWL: Towards Combining the Python and CWL Ecosystems
Nishchay Karle, Ben Clifford, Yadu Babuji, Ryan Chard, Daniel S. Katz,, Kyle Chard

TL;DR
This paper presents an integration of CWL with Parsl, enabling seamless execution of CWL workflows within Python environments and demonstrating improved workflow management and performance.
Contribution
It introduces a novel method to convert CWL CommandLineTool definitions into Parsl apps and a Parsl runner for direct CWL execution, bridging two workflow ecosystems.
Findings
Successful conversion of CWL tools into Parsl apps
A Parsl runner capable of executing CWL CommandLineTools
Performance comparison showing benefits of integration
Abstract
The Common Workflow Language (CWL) is a widely adopted language for defining and sharing computational workflows. It is designed to be independent of the execution engine on which workflows are executed. In this paper, we describe our experiences integrating CWL with Parsl, a Python-based parallel programming library designed to manage execution of workflows across diverse computing environments. We propose a new method that converts CWL CommandLineTool definitions into Parsl apps, enabling Parsl scripts to easily import and use tools represented in CWL. We describe a Parsl runner that is capable of executing a CWL CommandLineTool directly. We also describe a proof-of-concept extension to support inline Python in a CWL workflow definition, enabling seamless use in the Python ecosystem of Parsl. We demonstrate the benefits of this integration by presenting example CWL CommandLineTool…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsScientific Computing and Data Management · Computational Physics and Python Applications
