Skip to main content

Workflomics Benchmarker

Workflomics Benchmarker is a library designed for executing and benchmarking workflows provided in Common Workflow Language (CWL) within the Workflomics ecosystem.

Detailed user documentation is available on readthedocs.

Badges

Description Badge
Packages and Releases Latest release PyPI
DOI DOI
License GitHub license
OS Support
Requirements

Requirements

  • Python 3.9 or higher
  • Docker or Singularity

NOTE: Workflomics Benchmarker is will run on Linux and macOS without any additional configuration. However, Windows users need to use Windows Subsystem for Linux (WSL) to run the tool (see MS Windows users).

Optional:

  • Poetry (if you want to build the package from source)

Installation

Create a virtual environment and install the required packages:

python3 -m venv workflomics-env      # Create a virtual environment named 'env' in the current directory
source workflomics-env/bin/activate  # Activate environment before installing `workflomics`

Install workflomics-benchmarker from PyPI using pip:

pip install workflomics-benchmarker 

Alternatively, you clone the repository and can install it using Poetry by running:

git clone https://github.com/workflomics/workflomics-benchmarker.git
cd workflomics-benchmarker
poetry install 

MS Windows users

  1. Install Windows Subsystem for Linux 2 and Docker Desktop.
  2. Install Debian from the Microsoft Store.
  3. Set Debian as your default WSL 2 distro: wsl --set-default debian.
  4. Return to the Docker Desktop, choose Settings → Resources → WSL Integration and under "Enable integration with additional distros" select "Debian",
  5. Reboot if you have not yet already.
  6. Launch Debian and follow the Linux instructions above (pip install workflomics-benchmarker)

Network problems from within WSL2? Try these instructions <https://github.com/microsoft/WSL/issues/4731#issuecomment-702176954>_ followed by wsl --shutdown.

Usage

Ensure Docker or Singularity is running before executing workflows. Here are the commands for both services:

Docker

workflomics benchmark tests/data/ 

Or directly with Python:

python src/benchmarker/workflomics.py benchmark tests/data/ 

The results will be saved in the ./tests/data directory.

Singularity

To use Singularity, ensure it's installed and append the --singularity flag:

python src/benchmarker/workflomics.py benchmark tests/data/ --singularity 

Testing

Run the following command to execute tests:

poetry run pytest -s 

This command runs a workflow and benchmarks it, assuming Docker is operational. Results are stored in the ./tests/data directory.

Metadata

Release files for workflomics-benchmarker 0.2.1

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

Source distribution (sdist)

Source distribution for workflomics-benchmarker 0.2.1
File Size Uploaded
workflomics_benchmarker-0.2.1.tar.gz 18.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for workflomics-benchmarker 0.2.1
File Interpreter ABI Platform
workflomics_benchmarker-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 39.2 kB

Release files / workflomics_benchmarker-0.2.1.tar.gz

Download URL workflomics_benchmarker-0.2.1.tar.gz
Size 18.3 kB
Tags Source
SHA-256 checksum
How to use checksums
96230cd117fbb774ca6672e245f82e1a09376f70a48915121210d55a0d871471
BLAKE2b-256 checksum
How to use checksums
dbc9831896abb35719d2033e6d1a8fedd642c52cae4bc2b37d0b74e501f12ac1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.6.1 CPython/3.11.2 Darwin/23.4.0

Release files / workflomics_benchmarker-0.2.1-py3-none-any.whl

Download URL workflomics_benchmarker-0.2.1-py3-none-any.whl
Size 20.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
43b960111ab49ccffba5b0271d318823f47587aa07a5ff3b7086d28216b192a4
BLAKE2b-256 checksum
How to use checksums
63507b81f9bfa705e30ebf1302a128e8be95558c70ec74b93454e8960c8b00ac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.6.1 CPython/3.11.2 Darwin/23.4.0

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

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