COMPSs
COMP Superscalar (COMPSs) is a task-based programming model which aims to ease the development of applications for distributed infrastructures, such as large High-Performance Clusters (HPC), Clouds and Container managed clusters. PyCOMPSs is the Python binding of COMPSs.
COMPSs provides a programming interface for the development of applications in Python/Java/C/C++/R, a runtime system that exploits the inherent parallelism of applications at execution time, and a rich ecosystem for the operation, monitoring, performance evaluation and integration with Jupyter/Jupyterlab.
The COMPSs runtime includes the capacity of automatically recording details of the application’s execution as metadata, also known as Workflow Provenance. The metadata is recorded in RO-Crate format, following Workflow RO-Crate and Workflow Run RO-Crate profile collection. With workflow provenance, you are able to share not only your workflow application (i.e. the source code) but also your workflow run (i.e. the datasets used as inputs, the outputs generated as results, and rich information about every single task executed).
Provenance information can be useful for a number of things, including Governance, Reproducibility, Replicability, Traceability, or Knowledge Extraction, among others. Workflow Provenance enables users to publish research results obtained with COMPSs as artifacts that can be cited in scientific publications with their corresponding DOI, by using WorkflowHub or Zenodo using the RO-Crate InvenioRDM Deposit library. Both workflow provenance metadata and its publication in WorkflowHub/Zenodo enable the reproducibility of the workflows.
We have also developed a ‘inspect’ option in the PyCOMPSs CLI that allows to visualise in a friendly way not only COMPSs generated crates but also the ones generated from different WMSs that follow the Workflow related RO-Crate profiles. This means ‘pycompss inspect’ is interoperable at least with crates generated with: CWL, nextflow, Galaxy, Autosubmit, WfExS, Streamflow, Snakemake and Sapporo.

Examples of COMPSs RO-Crates
Plenty of examples of COMPSs Workflows with enabled provenance recording can be found at WorkflowHub (filtering the browsing by ‘COMPSs’ workflow type).
In addition, the COMPSs User Manual has a dedicated section on how to generate Workflow Provenance with COMPSs.
Resources
- COMPSs Homepage
- COMPSs documentation
- Workflow Provenance Slides Quick Overview
- Workflow Provenance Detailed Slides
- RO-Crate InvenioRDM Deposit library
- PyCOMPSs CLI
Publications
Panna Lukács, Rosa M. Badia, Raül Sirvent: Explaining AI Applications through Workflow Provenance. Master Thesis, Universitat Politècnica de Catalunya, 2025 https://hdl.handle.net/2117/449230
Leo, S., Crusoe, M. R., Rodríguez-Navas, L., Sirvent, R., Kanitz, A., De Geest, P., … & Soiland-Reyes, S.: Recording provenance of workflow runs with RO-Crate. PLoS ONE 19(9): e0309210. 2024 https://doi.org/10.1371/journal.pone.0309210
Raül Sirvent, Javier Conejero, Francesc Lordan, Jorge Ejarque, Laura Rodríguez-Navas, José M Fernández, Salvador Capella-Gutiérrez, Rosa M Badia:
Automatic, Efficient and Scalable Provenance Registration for FAIR HPC Workflows.
IEEE/ACM Workshop on Workflows in Support of Large-Scale Science (WORKS) 2022 (1-9)
https://doi.org/10.1109/WORKS56498.2022.00006
[preprint]
