Parsl+CWL: Towards Combining the Python and CWL Ecosystems

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Karle, Nishchay, Clifford, Ben, Babuji, Yadu, Chard, Ryan, Katz, Daniel S., Chard, Kyle
Natura: Preprint
Pubblicazione: 2024
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866913607505149952
author Karle, Nishchay
Clifford, Ben
Babuji, Yadu
Chard, Ryan
Katz, Daniel S.
Chard, Kyle
author_facet Karle, Nishchay
Clifford, Ben
Babuji, Yadu
Chard, Ryan
Katz, Daniel S.
Chard, Kyle
contents 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 definitions that show how they can be used in Parsl, and comparing performance of executing an image processing workflow using the Parsl integration and other CWL runners.
format Preprint
id arxiv_https___arxiv_org_abs_2412_08062
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Parsl+CWL: Towards Combining the Python and CWL Ecosystems
Karle, Nishchay
Clifford, Ben
Babuji, Yadu
Chard, Ryan
Katz, Daniel S.
Chard, Kyle
Distributed, Parallel, and Cluster Computing
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 definitions that show how they can be used in Parsl, and comparing performance of executing an image processing workflow using the Parsl integration and other CWL runners.
title Parsl+CWL: Towards Combining the Python and CWL Ecosystems
topic Distributed, Parallel, and Cluster Computing
url https://arxiv.org/abs/2412.08062