Snakemake executor plugin: slurm-gustave-roussy

https://img.shields.io/badge/repository-github-blue?color=%23022c22 https://img.shields.io/badge/author-tdayris-purple?color=%23064e3b PyPI - Version PyPI - License

Snakemake plugin executor designed to match Gustave Roussy computing cluster specificities : automatic partition seleciton, and default resources value.

Installation

Install this plugin by installing it with pip or mamba, e.g.:

pip install snakemake-executor-plugin-slurm-gustave-roussy

Usage

In order to use the plugin, run Snakemake (>=8.0) with the corresponding value for the executor flag:

snakemake --executor slurm-gustave-roussy ...

with ... being any additional arguments you want to use.

The executor plugin has the following settings:

Settings

CLI argument

Description

Default

Choices

Required

Type

--slurm-gustave-roussy-init-seconds-before-status-checks VALUE

Defines the time in seconds before the first status check is performed after job submission.

40

--slurm-gustave-roussy-requeue VALUE

Allow requeuing preempted of failed jobs, if no cluster default. Results in sbatch … –requeue … This flag has no effect, if not set.

False

Further details

Automatic partition selection

This executor automatically selects the best queue on Flamingo computing cluster at Gustave Roussy.

In order not to break pipelines running on Colibri, and other (old) clusters, this executor selects the best queue if, and only if the host name startswith “flamingo“.

GPU queue is automatically selected once job.resources.gres is not null. One can find examples in official Snakemake documentation and expecially about gpu resources

Default values

By default, according to Flamingo defaults behavior, --mem is set to 1024 bytes, and --time to 6 hours.

As described in offcial Snakemake documentation, one can change these values, respectively through job.resources.mem_mb as described here, and through job.threads as described in there.

Additional arguments

Additional Slurm arguments can be provided through Snakemake command line, using --slurm_gustave_roussy_args "..."