1
0
Fork 0
mirror of https://github.com/MillironX/nf-configs.git synced 2024-11-24 00:59:55 +00:00

Merge pull request #399 from nf-core/sanger

Sanger
This commit is contained in:
Alexander Peltzer 2022-07-20 16:51:46 +02:00 committed by GitHub
commit 36487c8c25
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 30 additions and 32 deletions

View file

@ -1,35 +1,33 @@
// Profile details
params { params {
config_profile_description = 'The Wellcome Sanger Institute HPC cluster profile' config_profile_description = 'The Wellcome Sanger Institute HPC cluster (farm5) profile'
config_profile_contact = 'Anthony Underwood (@aunderwo)' config_profile_contact = 'Priyanka Surana (@priyanka-surana)'
config_profile_url = 'https://www.sanger.ac.uk/group/informatics-support-group/' config_profile_url = 'https://www.sanger.ac.uk'
}
singularity {
enabled = true
cacheDir = "${baseDir}/singularity"
runOptions = '--bind /lustre --bind /nfs/pathnfs01 --bind /nfs/pathnfs02 --bind /nfs/pathnfs03 --bind /nfs/pathnfs04 --bind /nfs/pathnfs05 --bind /nfs/pathnfs06 --no-home'
} }
// Queue and retry strategy
process{ process{
executor = 'lsf' executor = 'lsf'
queue = 'normal' queue = { task.time < 12.h ? 'normal' : task.time < 48.h ? 'long' : 'basement' }
errorStrategy = { task.attempt <= 5 ? "retry" : "finish" } errorStrategy = 'retry'
process.maxRetries = 5 maxRetries = 5
withLabel:process_long {
queue = 'long'
}
} }
// Executor details
executor{ executor{
name = 'lsf' name = 'lsf'
perJobMemLimit = true perJobMemLimit = true
poolSize = 4 poolSize = 4
submitRateLimit = '5 sec' submitRateLimit = '5 sec'
killBatchSize = 50 killBatchSize = 50
} }
// Max resources
params { params {
max_memory = 128.GB max_memory = 683.GB
max_cpus = 64 max_cpus = 256
max_time = 48.h max_time = 720.h
} }
// For singularity
singularity.runOptions = '--bind /lustre --bind /nfs'

View file

@ -2,8 +2,6 @@
To use, run the pipeline with `-profile sanger`. This will download and launch the [`sanger.config`](../conf/sanger.config) which has been To use, run the pipeline with `-profile sanger`. This will download and launch the [`sanger.config`](../conf/sanger.config) which has been
pre-configured with a setup suitable for the Wellcome Sanger Institute LSF cluster. pre-configured with a setup suitable for the Wellcome Sanger Institute LSF cluster.
Using this profile, either a docker image containing all of the required software will be downloaded, and converted to a Singularity image or
a Singularity image downloaded directly before execution of the pipeline.
## Running the workflow on the Wellcome Sanger Institute cluster ## Running the workflow on the Wellcome Sanger Institute cluster
@ -14,10 +12,12 @@ The latest version of Nextflow is not installed by default on the cluster. You w
A recommended place to move the `nextflow` executable to is `~/bin` so that it's in the `PATH`. A recommended place to move the `nextflow` executable to is `~/bin` so that it's in the `PATH`.
Nextflow manages each process as a separate job that is submitted to the cluster by using the `bsub` command. Nextflow manages each process as a separate job that is submitted to the cluster by using the `bsub` command.
Since the Nextflow pipeline will submit individual jobs for each process to the cluster and dependencies will be provided bu Singularity images you shoudl make sure that your account has access to the Singularity binary by adding these lines to your `.bashrc` file
If asking Nextflow to use Singularity to run the individual jobs,
you should make sure that your account has access to the Singularity binary by adding these lines to your `.bashrc` file
```bash ```bash
[[ -f /software/pathogen/farm5 ]] && module load ISG/singularity [[ -f /software/modules/ISG/singularity ]] && module load ISG/singularity
``` ```
Nextflow shouldn't run directly on the submission node but on a compute node. Nextflow shouldn't run directly on the submission node but on a compute node.
@ -26,16 +26,16 @@ To do so make a shell script with a similar structure to the following code and
```bash ```bash
#!/bin/bash #!/bin/bash
#BSUB -o /path/to/a/log/dir/%J.o #BSUB -o /path/to/a/log/dir/%J.o
#BSUB -e /path/to/a/log/dir//%J.e #BSUB -e /path/to/a/log/dir/%J.e
#BSUB -M 8000 #BSUB -M 8000
#BSUB -q long #BSUB -q oversubscribed
#BSUB -n 4 #BSUB -n 2
export HTTP_PROXY='http://wwwcache.sanger.ac.uk:3128' export HTTP_PROXY='http://wwwcache.sanger.ac.uk:3128'
export HTTPS_PROXY='http://wwwcache.sanger.ac.uk:3128' export HTTPS_PROXY='http://wwwcache.sanger.ac.uk:3128'
export NXF_ANSI_LOG=false export NXF_ANSI_LOG=false
export NXF_OPTS="-Xms8G -Xmx8G -Dnxf.pool.maxThreads=2000" export NXF_OPTS="-Xms8G -Xmx8G -Dnxf.pool.maxThreads=2000"
export NXF_VER=21.04.0-edge export NXF_VER=22.04.0-5697
nextflow run \ nextflow run \