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)
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0fb026379a0c0818a53b898c7496033e97bdb04ec99b95a6291291a9f9635256 |
|
MD5 | e774ef813e2f9774774623f0242999e4 |
|
BLAKE2b-256 | 8fe2b64b809e9400233413e06e916ebee5411d2a2ad09f7aff1d4b58b92db0c4 |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5fed2c19cdd0fc7a2e1d7c70cb799fd49a3a96e9be34d4d28486412b2d4dc9ed |
|
MD5 | 7724e48689045e1eb0f43642eaae54e2 |
|
BLAKE2b-256 | 30e05a4b3c7e5761b2d2850b60440a54169d8fedff4180f4d602dcf61d135c06 |