Skip to content

CLI reference

cli

OmniBenchmark Command Line Interface (CLI).

Usage:

cli [OPTIONS] COMMAND [ARGS]...

Options:

  --debug / --no-debug  Enable debug mode for detailed logging.
  --version             Show the version and exit.
  --help                Show this message and exit.

Subcommands

  • info: No description was provided with this command.
  • run: No description was provided with this command.
  • software: No description was provided with this command.
  • storage: No description was provided with this command.

info

Usage:

cli info [OPTIONS] COMMAND [ARGS]...

Options:

  --help  Show this message and exit.

Subcommands

  • computational: Export computational graph to dot format.
  • diff: Show differences between 2 benchmark versions.
  • list-versions: List all available benchmarks versions at a specific endpoint.
  • topology: Export benchmark topology to mermaid diagram format.

computational

Export computational graph to dot format.

Usage:

cli info computational [OPTIONS]

Options:

  -b, --benchmark PATH  Path to benchmark yaml file or benchmark id.
                        [required]
  --help                Show this message and exit.

diff

Show differences between 2 benchmark versions.

Usage:

cli info diff [OPTIONS]

Options:

  -b, --benchmark PATH  Path to benchmark yaml file or benchmark id.
                        [required]
  -v1, --version1 TEXT  Reference version.  [required]
  -v2, --version2 TEXT  Version to compare with.  [required]
  --help                Show this message and exit.

list-versions

List all available benchmarks versions at a specific endpoint.

Usage:

cli info list-versions [OPTIONS]

Options:

  -b, --benchmark PATH  Path to benchmark yaml file or benchmark id.
                        [required]
  --help                Show this message and exit.

topology

Export benchmark topology to mermaid diagram format.

Usage:

cli info topology [OPTIONS]

Options:

  -b, --benchmark PATH  Path to benchmark yaml file or benchmark id.
                        [required]
  --help                Show this message and exit.

run

Usage:

cli run [OPTIONS] COMMAND [ARGS]...

Options:

  --help  Show this message and exit.

Subcommands

  • benchmark: Run a benchmark as specified in the yaml.
  • module:
  • validate: Validate a benchmark yaml.

benchmark

Run a benchmark as specified in the yaml.

Usage:

cli run benchmark [OPTIONS]

Options:

  -b, --benchmark PATH            Path to benchmark yaml file or benchmark id.
                                  [required]
  -p, --threads INTEGER           The parallelism level for the workflow
                                  scheduler.
  -u, --update                    Force re-run execution for all modules and
                                  stages.
  -d, --dry                       Dry run.
  -l, --local                     Execute and store results locally. Default
                                  False.
  --keep-module-logs / --no-keep-module-logs
                                  Keep module-specific log files after
                                  execution.
  --help                          Show this message and exit.

module

Run a specific module that is part of the benchmark.

Usage:

cli run module [OPTIONS]

Options:

  -b, --benchmark PATH            Path to benchmark yaml file or benchmark id.
                                  [required]
  -m, --module TEXT               Module id to execute  [required]
  -i, --input_dir PATH            Path to the folder with the appropriate
                                  input files.
  -d, --dry                       Dry run.
  -u, --update                    Force re-run execution for all modules and
                                  stages.
  --keep-module-logs / --no-keep-module-logs
                                  Keep module-specific log files after
                                  execution.
  --help                          Show this message and exit.

validate

Validate a benchmark yaml.

Usage:

cli run validate [OPTIONS]

Options:

  -b, --benchmark PATH  Path to benchmark yaml file or benchmark id.
  --help                Show this message and exit.

software

Usage:

cli software [OPTIONS] COMMAND [ARGS]...

Options:

  --help  Show this message and exit.

Subcommands

  • check: Check whether the component {what} is available.
  • conda: Manage and install software using conda.
  • module: Manage and install software using Easybuild
  • singularity: Manage and install software using Singularity.

check

Check whether the component {what} is available.

Usage:

cli software check [OPTIONS]

Options:

  -w, --what TEXT  Binary/functionality to check:

                   --what singularity : singularity

                   --what module      : module tool, typically lmod

                   --what easybuild   : easybuild

                   --what conda       : conda
  --help           Show this message and exit.

conda

Manage and install software using conda.

Usage:

cli software conda [OPTIONS] COMMAND [ARGS]...

Options:

  --help  Show this message and exit.

Subcommands

  • pin: Pin all conda env-related dependencies versions using snakedeploy.
  • prepare: Pin all conda envs needed for a given benchmark YAML.
pin

Pin all conda env-related dependencies versions using snakedeploy.

Usage:

cli software conda pin [OPTIONS]

Options:

  -e, --env PATH  Conda env YAML.  [required]
  --help          Show this message and exit.
prepare

Pin all conda envs needed for a given benchmark YAML.

Usage:

cli software conda prepare [OPTIONS]

Options:

  -b, --benchmark PATH  Benchmark YAML.  [required]
  --help                Show this message and exit.

module

Manage and install software using Easybuild

Usage:

cli software module [OPTIONS] COMMAND [ARGS]...

Options:

  --help  Show this message and exit.

Subcommands

  • build: Build a given easyconfig (and generates the relevant envmodules).
  • prepare: Build all envmodules needed for a given benchmark YAML.
build

Build a given easyconfig (and generates the relevant envmodules).

Usage:

cli software module build [OPTIONS]

Options:

  -e, --easyconfig TEXT  Easyconfig.  [required]
  -p, --threads INTEGER  Number of threads.
  --help                 Show this message and exit.
prepare

Build all envmodules needed for a given benchmark YAML.

Usage:

cli software module prepare [OPTIONS]

Options:

  -b, --benchmark PATH   Benchmark YAML.  [required]
  -p, --threads INTEGER  Number of threads.
  --help                 Show this message and exit.

singularity

Manage and install software using Singularity.

Usage:

cli software singularity [OPTIONS] COMMAND [ARGS]...

Options:

  --help  Show this message and exit.

Subcommands

  • build: Build a singularity (fakeroot) image for a given easyconfig.
  • prepare: Build all singularity (fakeroot) images needed for a benchmark.
  • push: Pushes a singularity SIF file to an ORAS-compatible registry.
build

Build a singularity (fakeroot) image for a given easyconfig.

Usage:

cli software singularity build [OPTIONS]

Options:

  -e, --easyconfig TEXT  Easyconfig.  [required]
  --help                 Show this message and exit.
prepare

Build all singularity (fakeroot) images needed for a benchmark.

Usage:

cli software singularity prepare [OPTIONS]

Options:

  -b, --benchmark PATH  Benchmark YAML.  [required]
  --help                Show this message and exit.
push

Pushes a singularity SIF file to an ORAS-compatible registry.

Usage:

cli software singularity push [OPTIONS]

Options:

  -u, --docker_username TEXT  Docker username.  [required]
  -p, --docker_password TEXT  Docker password.  [required]
  -s, --sif PATH              Path to the Singularity SIF file.  [required]
  -o, --oras TEXT             Registry's ORAS static URL, for instance oras://
                              registry.mygitlab.ch/myuser/myproject:mytag.
                              [required]
  --help                      Show this message and exit.

storage

Usage:

cli storage [OPTIONS] COMMAND [ARGS]...

Options:

  --help  Show this message and exit.

Subcommands

  • checksum: Generate md5sums of all benchmark outputs
  • create-policy: Create a new policy for a benchmark.
  • create-version: Create a new benchmark version.
  • download: Download all or specific files for a benchmark.
  • list: List all or specific files for a benchmark.

checksum

Generate md5sums of all benchmark outputs

Usage:

cli storage checksum [OPTIONS]

Options:

  -b, --benchmark PATH  Path to benchmark yaml file or benchmark id.
                        [required]
  --help                Show this message and exit.

create-policy

Create a new policy for a benchmark.

Usage:

cli storage create-policy [OPTIONS]

Options:

  -b, --benchmark PATH  Path to benchmark yaml file or benchmark id.
                        [required]
  --help                Show this message and exit.

create-version

Create a new benchmark version.

Usage:

cli storage create-version [OPTIONS]

Options:

  -b, --benchmark PATH  Path to benchmark yaml file or benchmark id.
                        [required]
  --help                Show this message and exit.

download

Download all or specific files for a benchmark.

Usage:

cli storage download [OPTIONS]

Options:

  -b, --benchmark PATH  Path to benchmark yaml file or benchmark id.
                        [required]
  -t, --type TEXT       File types. Options: all, code, inputs, outputs, logs,
                        performance.
  -s, --stage TEXT      Stage to download files from.
  -m, --module TEXT     Module to download files from.
  -i, --id TEXT         File id to download.
  --help                Show this message and exit.

list

List all or specific files for a benchmark.

Usage:

cli storage list [OPTIONS]

Options:

  -b, --benchmark PATH  Path to benchmark yaml file or benchmark id.
                        [required]
  -t, --type TEXT       File types. Options: all, code, inputs, outputs, logs,
                        performance.
  -s, --stage TEXT      Stage to list files for.
  -i, --id TEXT         File id/type to list.
  --help                Show this message and exit.