Snakemake

Introduction

Snakemake is a workflow engine that provides a readable Python-based workflow definition language and a powerful execution environment that scales from single-core workstations to compute clusters without modifying the workflow.

For more information, please check:

Note

Please follow the recommended citation guidelines from the developers when you use the tool in research.

Versions

Cluster

Version(s)

ANVIL

6.8.0

BELL

6.8.0

GAUTSCHI

6.8.0

NEGISHI

6.8.0

SCHOLAR

6.8.0

Commands

  • snakemake

Module

You can load the modules by:

module load biocontainers
module load snakemake

Example job

Warning

Using #!/bin/sh -l as shebang in the slurm job script will cause the failure of some biocontainer modules. Please use #!/bin/bash instead.

To run snakemake on our clusters:

#!/bin/bash
#SBATCH -A myallocation     # Allocation name
#SBATCH -p wholenode        # Partition name
#SBATCH -t 1:00:00
#SBATCH -N 1
#SBATCH -n 1
#SBATCH --job-name=snakemake
#SBATCH --mail-type=FAIL,BEGIN,END
#SBATCH --error=%x-%J-%u.err
#SBATCH --output=%x-%J-%u.out

module --force purge
module biocontainers snakemake

# Your snakemake workflow...
#!/bin/bash
#SBATCH -A mygroup     # Group name
#SBATCH -p cpu         # Partition name
#SBATCH -q normal      # QOS name (optional)
#SBATCH -t 1:00:00
#SBATCH -N 1
#SBATCH -n 1
#SBATCH --job-name=snakemake
#SBATCH --mail-type=FAIL,BEGIN,END
#SBATCH --error=%x-%J-%u.err
#SBATCH --output=%x-%J-%u.out

module --force purge
module biocontainers snakemake

# Your snakemake workflow...
#!/bin/bash
#SBATCH -A mygroup     # Group name
#SBATCH -p ai          # Partition name
#SBATCH --gres=gpu:1   # Number of GPUs
#SBATCH -q normal      # QOS name (optional)
#SBATCH -t 1:00:00
#SBATCH -N 1
#SBATCH -n 1
#SBATCH --job-name=snakemake
#SBATCH --mail-type=FAIL,BEGIN,END
#SBATCH --error=%x-%J-%u.err
#SBATCH --output=%x-%J-%u.out

module --force purge
module biocontainers snakemake

# Your snakemake workflow...
#!/bin/bash
#SBATCH -A mygroup     # Group name
#SBATCH -p a100        # Partition name
#SBATCH --gres=gpu:1   # Number of GPUs
#SBATCH --mem=2G       # Memory
#SBATCH -q normal      # QOS name (optional)
#SBATCH -t 1:00:00
#SBATCH -N 1
#SBATCH -n 1
#SBATCH --job-name=snakemake
#SBATCH --mail-type=FAIL,BEGIN,END
#SBATCH --error=%x-%J-%u.err
#SBATCH --output=%x-%J-%u.out

module --force purge
module biocontainers snakemake

# Your snakemake workflow...
#!/bin/bash
#SBATCH -A queue     # Queue name
#SBATCH -t 1:00:00
#SBATCH -N 1
#SBATCH -n 1
#SBATCH --job-name=snakemake
#SBATCH --mail-type=FAIL,BEGIN,END
#SBATCH --error=%x-%J-%u.err
#SBATCH --output=%x-%J-%u.out

module --force purge
module biocontainers snakemake

# Your snakemake workflow...