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:
BioContainers: https://biocontainers.pro/tools/snakemake
Home page: https://snakemake.readthedocs.io/en/stable/
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...