Skip to main content

miniwdl lsf backend using singularity

Project description

miniwdl-lsf

Extends miniwdl to run workflows on LSF clusters in singularity containers.

This LSF backend plugin for miniwdl runs WDL task containers by creating a job script that is submitted to a LSF cluster. In case the job description has a container, singularity will be used as container runtime.

Installation

For the development version::

pip install git+https://github.com/adthrasher/miniwdl-lsf.git

Configuration

The following miniwdl configuration example can be used to use miniwdl on a LSF cluster:

    [scheduler]
    container_backend=lsf_singularity
    # Sets the maximum concurrent tasks. Since LSF handles scheduling, we only
    # limit to avoid excessive overhead in miniwdl.
    task_concurrency=200
    
    # This setting allows running tasks to continue, even if one other tasks fails. 
    # Useful in combination with call caching. Prevents wasting resources by
    # cancelling jobs half-way that would probably succeed.
    fail_fast = false

    [call_cache]
    # The following settings create a call cache under the current directory.
    # This prevents wasting unnecessary resources on the cluster by rerunning 
    # jobs that have already succeeded.
    put = true 
    get = true 
    dir = "$PWD/miniwdl_call_cache"

    [task_runtime]
    # Setting a 'maxRetries' default allows jobs that fail due to intermittent
    # errors on the cluster to be retried.
    defaults = {
            "maxRetries": 2,
            "docker": "ubuntu:20.04"
        }

    command_shell = /bin/bash

    memory_limit_multiplier = 1.0
 
    [singularity]
    # This plugin wraps the singularity backend. Make sure the settings are
    # appropriate for your cluster.
    exe = ["singularity"]

    # the miniwdl default options contain options to run as a fake root, which
    # is not available on most clusters.
    run_options = [
            "--containall",
            "--cleanenv"
        ]

    # Location of the singularity images (optional). The miniwdl-lsf plugin
    # will set it to a directory inside $PWD. This location must be reachable
    # for the submit nodes.
    image_cache = "$PWD/miniwdl_singularity_cache"

    [lsf]
    # extra arguments passed to the bsub command (optional).
    extra_args=""
    # Task memory specifications should be interpreted as per-job not per-core (LSF default)
    memory_per_job = true

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

miniwdl_lsf-0.1.2.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

miniwdl_lsf-0.1.2-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file miniwdl_lsf-0.1.2.tar.gz.

File metadata

  • Download URL: miniwdl_lsf-0.1.2.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.9.15 Darwin/23.1.0

File hashes

Hashes for miniwdl_lsf-0.1.2.tar.gz
Algorithm Hash digest
SHA256 0fb026379a0c0818a53b898c7496033e97bdb04ec99b95a6291291a9f9635256
MD5 e774ef813e2f9774774623f0242999e4
BLAKE2b-256 8fe2b64b809e9400233413e06e916ebee5411d2a2ad09f7aff1d4b58b92db0c4

See more details on using hashes here.

File details

Details for the file miniwdl_lsf-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: miniwdl_lsf-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 5.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.9.15 Darwin/23.1.0

File hashes

Hashes for miniwdl_lsf-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5fed2c19cdd0fc7a2e1d7c70cb799fd49a3a96e9be34d4d28486412b2d4dc9ed
MD5 7724e48689045e1eb0f43642eaae54e2
BLAKE2b-256 30e05a4b3c7e5761b2d2850b60440a54169d8fedff4180f4d602dcf61d135c06

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page