COMPSs

COMPSs enables execution of parallel computational workflows in Python on distributed infrastructures for scalable scientific computing.


Key Features:

  • Sequential Programming Model: Allows writing computational scripts in sequential Python while leveraging Python scientific libraries.
  • Annotations/Hints for Parallelism: Functions can be annotated to be executed as asynchronous parallel tasks.
  • Automatic Task Dependency Graph Creation: The runtime detects data dependencies and constructs a task dependency graph on-the-fly to manage execution order and concurrency.
  • Portability Across HPC and Cloud Environments: Workflows can be executed on high-performance computing and cloud infrastructures without modifying the code.
  • Integration with Big Data Storage Architectures: Supports data abstraction as persistent objects accessible from the application layer to interact with large datasets.

Scientific Applications:

  • Genomic data analysis: Scales execution of genomic analysis workflows that require distributed computation.
  • Protein structure prediction: Executes computationally intensive protein modelling and structure prediction workflows across distributed resources.
  • High-throughput bioinformatics workflows: Runs other computationally demanding tasks in bioinformatics and life sciences that benefit from distributed parallelism.

Methodology:

Users write sequential Python scripts and annotate functions as asynchronous tasks; the runtime interprets annotations, automatically detects data dependencies to build a task dependency graph, manages and schedules task execution across distributed resources, and uses persistent objects to abstract data storage.

Topics

Collections

Details

License:
Apache-2.0
Maturity:
Mature
Cost:
Free of charge
Tool Type:
workflow
Operating Systems:
Linux
Programming Languages:
Java, Python
Added:
10/3/2016
Last Updated:
12/10/2018

Operations

Data Inputs & Outputs

Publications

Badia RM, Conejero J, Diaz C, Ejarque J, Lezzi D, Lordan F, Ramon-Cortes C, Sirvent R. COMP Superscalar, an interoperable programming framework. SoftwareX. 2015;3-4:32-36. doi:10.1016/j.softx.2015.10.004.

Funding: - Spanish Government: SEV-2011-00067 - European Commission: 604102, 610874, 614048

Lordan F, Tejedor E, Ejarque J, Rafanell R, Álvarez J, Marozzo F, Lezzi D, Sirvent R, Talia D, Badia RM. ServiceSs: An Interoperable Programming Framework for the Cloud. Journal of Grid Computing. 2013;12(1):67-91. doi:10.1007/s10723-013-9272-5.

Tejedor E, Becerra Y, Alomar G, Queralt A, Badia RM, Torres J, Cortes T, Labarta J. PyCOMPSs: Parallel computational workflows in Python. The International Journal of High Performance Computing Applications. 2016;31(1):66-82. doi:10.1177/1094342015594678.

Documentation

Downloads