Skip to main content

Build  PyPI version  License: LGPL v3  CodeFactor  Documentation Status  Codecov  Downloads


An open-source ecosystem of workflow execution instances, synthetic workflow generators, and benchmark specifications. It helps the community study scheduling, performance, resilience, and emerging AI-driven workflow automation on modern distributed and HPC platforms.

  • Real instances: Workflow executions curated in a common JSON format (WfFormat).
  • Synthetic realism: Generate realistic workflows from real traces.
  • Benchmarks: Produce executable specs for repeatable experiments and fair comparisons.

Quick links: Documentation · Website · GitHub Issues

Quickstart

WfCommons requires Python 3.11+ and has been tested on Linux and macOS.

python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install wfcommons

Generate a synthetic workflow in a few lines:

import pathlib
from wfcommons.wfchef.recipes import SeismologyRecipe
from wfcommons import WorkflowGenerator

generator = WorkflowGenerator(SeismologyRecipe.from_num_tasks(250))
workflow = generator.build_workflow()
workflow.write_json(pathlib.Path("seismology-workflow.json"))

Next steps:

Installation

WfCommons is available on PyPI.

python3 -m pip install wfcommons

Installing from source (latest)

git clone https://github.com/wfcommons/wfcommons
cd wfcommons
python3 -m pip install .

Optional Requirements

Visualization support (workflow task graph drawings) is available as an extra:

python3 -m pip install wfcommons[viz]

Graphviz

WfCommons uses pygraphviz for generating visualizations for the workflow task graph. If you want to enable this feature, you will have to install the graphviz package (version 2.16 or later). You can install graphviz easily on Linux with your favorite package manager, for example for Debian-based distributions:

sudo apt-get install graphviz libgraphviz-dev

and for RedHat-based distributions:

sudo yum install python-devel graphviz-devel

On macOS you can use brew package manager:

brew install graphviz

Then you can install pygraphviz by running:

python3 -m pip install pygraphviz

pydot

WfCommons uses pydot for reading and writing DOT files. If you want to enable this feature, you will have to install the pydot package:

python3 -m pip install pydot

Get in Touch

The main channel to reach the WfCommons team is via the support email: support@wfcommons.org.

Bug Report / Feature Request: our preferred channel to report a bug or request a feature is via WfCommons's Github Issues Track.

Citing WfCommons

When citing WfCommons, please use the following paper. You should also actually read that paper, as it provides a recent and general overview on the framework.

@article{wfcommons,
    title = {{WfCommons: A Framework for Enabling Scientific Workflow Research and Development}},
    author = {Coleman, Taina and Casanova, Henri and Pottier, Loic and Kaushik, Manav and Deelman, Ewa and Ferreira da Silva, Rafael},
    journal = {Future Generation Computer Systems},
    volume = {128},
    number = {},
    pages = {16--27},
    doi = {10.1016/j.future.2021.09.043},
    year = {2022},
}

Metadata

Release files for wfcommons 1.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wfcommons 1.6
File Size Uploaded Provenance
wfcommons-1.6.tar.gz 5.8 MB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for wfcommons 1.6
File Interpreter ABI Platform
wfcommons-1.6-cp314-cp314-macosx_26_0_arm64.whl CPython 3.14 CPython 3.14 macOS 26.0+ ARM64 Details

Total release size: 11.9 MB

Release files / wfcommons-1.6.tar.gz

Download URL wfcommons-1.6.tar.gz
Size 5.8 MB
Tags Source
SHA-256 checksum
How to use checksums
b15a0b04c784fc91bf1a6188aa53cfe08daae788982f5aa3c4c79d08f8f1d734
BLAKE2b-256 checksum
How to use checksums
71136c0364afdf9483662d0c7212ab67e4164364f5968e7a7160075793e3e221
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.6

Release files / wfcommons-1.6-cp314-cp314-macosx_26_0_arm64.whl

Download URL wfcommons-1.6-cp314-cp314-macosx_26_0_arm64.whl
Size 6.1 MB
Tags CPython 3.14 macOS 26.0+ ARM64
SHA-256 checksum
How to use checksums
fc18b1400ca58e750d676c2d5ee2e696e9ac9cd2d7d2224747eca2bbd865d0f5
BLAKE2b-256 checksum
How to use checksums
f69f04092ffdf806bd26a4e021832e733ee0c1fa2190495b54e28ebaba1abb05
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.6

Security for wfcommons 1.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page