mirror of
https://github.com/MillironX/nf-configs.git
synced 2024-11-21 16:16:04 +00:00
Merge pull request #425 from sheffield-bioinformatics-core/sbc_sharc
Updates to sbc_sharc configs
This commit is contained in:
commit
62d4e0d06b
5 changed files with 92 additions and 97 deletions
|
@ -1,35 +1,33 @@
|
|||
/*
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Sheffield Bioinformatics Core Configuration Profile - ShARC
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Custom Pipeline Resource Config for nf-core/atacseq
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
*/
|
||||
|
||||
// Sheffield Bioinformatics Core Configuration Profile - ShARC
|
||||
// Custom Pipeline Resource Config for nf-core/atacseq
|
||||
|
||||
// process-specific resource requirements - reduced specification from those in atacseq/conf/base.config
|
||||
|
||||
process {
|
||||
|
||||
// error and retry handling
|
||||
|
||||
errorStrategy = { task.exitStatus in [143,137,104,134,139,140] ? 'retry' : 'finish' }
|
||||
maxRetries = 2
|
||||
|
||||
|
||||
// process labels
|
||||
|
||||
withLabel:process_low {
|
||||
cpus = { check_max( 2 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 4.GB * task.attempt, 'memory' ) }
|
||||
memory = { check_max( 12.GB * task.attempt, 'memory' ) }
|
||||
time = { check_max( 4.h * task.attempt, 'time' ) }
|
||||
}
|
||||
|
||||
withLabel:process_medium {
|
||||
cpus = { check_max( 4 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 8.GB * task.attempt, 'memory' ) }
|
||||
memory = { check_max( 32.GB * task.attempt, 'memory' ) }
|
||||
time = { check_max( 6.h * task.attempt, 'time' ) }
|
||||
}
|
||||
|
||||
withLabel:process_high {
|
||||
cpus = { check_max( 8 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 16.GB * task.attempt, 'memory' ) }
|
||||
memory = { check_max( 128.GB * task.attempt, 'memory' ) }
|
||||
time = { check_max( 8.h * task.attempt, 'time' ) }
|
||||
}
|
||||
|
||||
|
@ -72,3 +70,4 @@ def check_max(obj, type) {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,35 +1,33 @@
|
|||
/*
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Sheffield Bioinformatics Core Configuration Profile - ShARC
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Custom Pipeline Resource Config for nf-core/chipseq
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
*/
|
||||
|
||||
// Sheffield Bioinformatics Core Configuration Profile - ShARC
|
||||
// Custom Pipeline Resource Config for nf-core/chipseq
|
||||
|
||||
// process-specific resource requirements - reduced specification from those in chipseq/conf/base.config
|
||||
|
||||
process {
|
||||
|
||||
// error and retry handling
|
||||
|
||||
errorStrategy = { task.exitStatus in [143,137,104,134,139,140] ? 'retry' : 'finish' }
|
||||
maxRetries = 2
|
||||
|
||||
|
||||
// process labels
|
||||
|
||||
withLabel:process_low {
|
||||
cpus = { check_max( 2 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 4.GB * task.attempt, 'memory' ) }
|
||||
memory = { check_max( 12.GB * task.attempt, 'memory' ) }
|
||||
time = { check_max( 4.h * task.attempt, 'time' ) }
|
||||
}
|
||||
|
||||
withLabel:process_medium {
|
||||
cpus = { check_max( 4 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 8.GB * task.attempt, 'memory' ) }
|
||||
memory = { check_max( 32.GB * task.attempt, 'memory' ) }
|
||||
time = { check_max( 6.h * task.attempt, 'time' ) }
|
||||
}
|
||||
|
||||
withLabel:process_high {
|
||||
cpus = { check_max( 8 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 16.GB * task.attempt, 'memory' ) }
|
||||
memory = { check_max( 128.GB * task.attempt, 'memory' ) }
|
||||
time = { check_max( 8.h * task.attempt, 'time' ) }
|
||||
}
|
||||
|
||||
|
@ -72,3 +70,4 @@ def check_max(obj, type) {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,35 +1,33 @@
|
|||
/*
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Sheffield Bioinformatics Core Configuration Profile - ShARC
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Custom Pipeline Resource Config for nf-core/rnaseq
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
*/
|
||||
|
||||
// Sheffield Bioinformatics Core Configuration Profile - ShARC
|
||||
// Custom Pipeline Resource Config for nf-core/rnaseq
|
||||
|
||||
// process-specific resource requirements - reduced specification from those in rnaseq/conf/base.config
|
||||
|
||||
process {
|
||||
|
||||
// error and retry handling
|
||||
|
||||
errorStrategy = { task.exitStatus in [143,137,104,134,139,140] ? 'retry' : 'finish' }
|
||||
maxRetries = 2
|
||||
|
||||
|
||||
// process labels
|
||||
|
||||
withLabel:process_low {
|
||||
cpus = { check_max( 2 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 4.GB * task.attempt, 'memory' ) }
|
||||
memory = { check_max( 12.GB * task.attempt, 'memory' ) }
|
||||
time = { check_max( 4.h * task.attempt, 'time' ) }
|
||||
}
|
||||
|
||||
withLabel:process_medium {
|
||||
cpus = { check_max( 4 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 8.GB * task.attempt, 'memory' ) }
|
||||
memory = { check_max( 32.GB * task.attempt, 'memory' ) }
|
||||
time = { check_max( 6.h * task.attempt, 'time' ) }
|
||||
}
|
||||
|
||||
withLabel:process_high {
|
||||
cpus = { check_max( 8 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 16.GB * task.attempt, 'memory' ) }
|
||||
memory = { check_max( 128.GB * task.attempt, 'memory' ) }
|
||||
time = { check_max( 8.h * task.attempt, 'time' ) }
|
||||
}
|
||||
|
||||
|
@ -38,7 +36,7 @@ process {
|
|||
}
|
||||
|
||||
withLabel:process_high_memory {
|
||||
memory = { check_max( 60.GB * task.attempt, 'memory' ) }
|
||||
memory = { check_max( 160.GB * task.attempt, 'memory' ) }
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,38 +1,33 @@
|
|||
/*
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Sheffield Bioinformatics Core Configuration Profile - ShARC
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Custom Pipeline Resource Config for nf-core/sarek
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
*/
|
||||
|
||||
// Sheffield Bioinformatics Core Configuration Profile - ShARC
|
||||
// Custom Pipeline Resource Config for nf-core/sarek
|
||||
|
||||
// process-specific resource requirements - reduced specification from those in sarek/conf/base.config
|
||||
|
||||
process {
|
||||
|
||||
|
||||
// error and retry handling
|
||||
|
||||
errorStrategy = { task.exitStatus in [143,137,104,134,139,140,247] ? 'retry' : 'finish' }
|
||||
maxRetries = 2
|
||||
|
||||
|
||||
// process labels
|
||||
|
||||
withLabel:process_low {
|
||||
cpus = { check_max( 2 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 4.GB * task.attempt, 'memory' ) }
|
||||
memory = { check_max( 16.GB * task.attempt, 'memory' ) }
|
||||
time = { check_max( 4.h * task.attempt, 'time' ) }
|
||||
}
|
||||
|
||||
withLabel:process_medium {
|
||||
cpus = { check_max( 4 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 8.GB * task.attempt, 'memory' ) }
|
||||
cpus = { check_max( 6 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 72.GB * task.attempt, 'memory' ) }
|
||||
time = { check_max( 6.h * task.attempt, 'time' ) }
|
||||
}
|
||||
|
||||
withLabel:process_high {
|
||||
cpus = { check_max( 8 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 16.GB * task.attempt, 'memory' ) }
|
||||
cpus = { check_max( 12 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 192.GB * task.attempt, 'memory' ) }
|
||||
time = { check_max( 8.h * task.attempt, 'time' ) }
|
||||
}
|
||||
|
||||
|
@ -41,7 +36,7 @@ process {
|
|||
}
|
||||
|
||||
withLabel:process_high_memory {
|
||||
memory = { check_max( 60.GB * task.attempt, 'memory' ) }
|
||||
memory = { check_max( 240.GB * task.attempt, 'memory' ) }
|
||||
}
|
||||
|
||||
|
||||
|
@ -49,7 +44,7 @@ process {
|
|||
|
||||
withName:'BWAMEM1_MEM|BWAMEM2_MEM' {
|
||||
cpus = { check_max( 12 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 16.GB * task.attempt, 'memory' ) }
|
||||
memory = { check_max( 192.GB * task.attempt, 'memory' ) }
|
||||
time = { check_max( 8.h * task.attempt, 'time' ) }
|
||||
}
|
||||
|
||||
|
@ -66,11 +61,13 @@ process {
|
|||
}
|
||||
|
||||
withName:'GATK4_APPLYBQSR|GATK4_APPLYBQSR_SPARK|GATK4_BASERECALIBRATOR|GATK4_GATHERBQSRREPORTS' {
|
||||
memory = { check_max( 16.GB * task.attempt, 'memory' ) }
|
||||
memory = { check_max( 72.GB * task.attempt, 'memory' ) }
|
||||
}
|
||||
|
||||
withName:'GATK4_MARKDUPLICATES' {
|
||||
memory = { check_max( 16.GB * task.attempt, 'memory' ) }
|
||||
cpus = { check_max( 12 * task.attempt, 'cpus' ) }
|
||||
memory = { check_max( 240.GB * task.attempt, 'memory' ) }
|
||||
time = { check_max( 12.h * task.attempt, 'time' ) }
|
||||
}
|
||||
|
||||
withName:'FREEBAYES|SAMTOOLS_STATS|SAMTOOLS_INDEX|UNZIP' {
|
||||
|
|
|
@ -1,39 +1,25 @@
|
|||
/*
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Sheffield Bioinformatics Core Configuration Profile - ShARC
|
||||
// Sheffield Bioinformatics Core Configuration Profile - ShARC
|
||||
// Base Institutional Configuration
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Base Institutional Configuration
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
*/
|
||||
|
||||
// nf-core specific parameters displayed in header summary of each run
|
||||
|
||||
params {
|
||||
|
||||
// nf-core specific parameters displayed in header summary of each run
|
||||
|
||||
config_profile_description = 'Sheffield Bioinformatics Core - ShARC'
|
||||
config_profile_contact = 'Lewis Quayle (l.quayle@sheffield.ac.uk)'
|
||||
config_profile_url = 'https://docs.hpc.shef.ac.uk/en/latest/sharc/index.html'
|
||||
|
||||
// hpc resource limits
|
||||
|
||||
max_cpus = 16
|
||||
max_memory = 64.GB
|
||||
max_time = 96.h
|
||||
|
||||
}
|
||||
|
||||
|
||||
// container engine
|
||||
// hpc resource limits
|
||||
|
||||
singularity {
|
||||
|
||||
enabled = true
|
||||
autoMounts = true
|
||||
params {
|
||||
|
||||
max_cpus = 16
|
||||
max_memory = 256.GB
|
||||
max_time = 96.h
|
||||
|
||||
}
|
||||
|
||||
|
@ -47,11 +33,27 @@ process {
|
|||
executor = 'sge'
|
||||
penv = 'smp'
|
||||
queue = { task.time <= 6.h ? 'shortint.q' : 'all.q' }
|
||||
clusterOptions = { "-l rmem=${task.memory.toGiga()}G" }
|
||||
|
||||
// error and retry handling
|
||||
|
||||
errorStrategy = { task.exitStatus in [143,137,104,134,139,140] ? 'retry' : 'finish' }
|
||||
maxRetries = 2
|
||||
clusterOptions = { "-l rmem=${ (task.memory.toGiga() / task.cpus) }G" }
|
||||
|
||||
}
|
||||
|
||||
|
||||
// optional executor settings
|
||||
|
||||
executor {
|
||||
|
||||
queueSize = 10
|
||||
submitRateLimit = '1 sec'
|
||||
|
||||
}
|
||||
|
||||
|
||||
// container engine
|
||||
|
||||
singularity {
|
||||
|
||||
enabled = true
|
||||
autoMounts = true
|
||||
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue