2020-12-18 10:21:26 +00:00
|
|
|
//Profile config names for nf-core/configs
|
|
|
|
|
|
|
|
params {
|
2022-02-10 23:02:47 +00:00
|
|
|
// Config Params
|
|
|
|
config_profile_description = 'Imperial College London - HPC Profile -- provided by nf-core/configs.'
|
|
|
|
config_profile_url = 'https://www.imperial.ac.uk/admin-services/ict/self-service/research-support/rcs/'
|
2020-12-18 10:21:26 +00:00
|
|
|
|
2022-02-10 23:02:47 +00:00
|
|
|
// Resources
|
|
|
|
max_memory = 480.GB
|
|
|
|
max_cpus = 40
|
|
|
|
max_time = 1000.h
|
2020-12-18 10:21:26 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
executor {
|
2022-02-10 23:02:47 +00:00
|
|
|
$pbspro {
|
|
|
|
queueSize = 50
|
|
|
|
}
|
2020-12-18 15:34:56 +00:00
|
|
|
|
2022-02-10 23:02:47 +00:00
|
|
|
$local {
|
|
|
|
cpus = 2
|
|
|
|
queueSize = 1
|
|
|
|
memory = '6 GB'
|
|
|
|
}
|
2020-12-18 10:21:26 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
singularity {
|
2022-02-10 23:02:47 +00:00
|
|
|
enabled = true
|
|
|
|
autoMounts = true
|
|
|
|
runOptions = "-B /rds/,/rds/general/user/$USER/ephemeral/tmp/:/tmp,/rds/general/user/$USER/ephemeral/tmp/:/var/tmp"
|
2020-12-18 10:21:26 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
process {
|
2022-02-10 23:02:47 +00:00
|
|
|
executor = 'pbspro'
|
2020-12-18 10:21:26 +00:00
|
|
|
|
2022-02-10 23:02:47 +00:00
|
|
|
// Process-specific resource requirements
|
|
|
|
withLabel:process_low {
|
|
|
|
// TARGET QUEUE: throughput
|
|
|
|
cpus = { check_max( 2 * task.attempt, 'cpus' ) }
|
|
|
|
memory = { check_max( 12.GB * task.attempt, 'memory' ) }
|
|
|
|
time = { check_max( 4.h * task.attempt, 'time' ) }
|
|
|
|
}
|
|
|
|
withLabel:process_medium {
|
|
|
|
// TARGET QUEUE: throughput
|
|
|
|
cpus = { check_max( 8, 'cpus' ) }
|
|
|
|
memory = { check_max( 32.GB * task.attempt, 'memory' ) }
|
|
|
|
time = { check_max( 8.h * task.attempt, 'time' ) }
|
|
|
|
}
|
|
|
|
withLabel:process_high {
|
|
|
|
// TARGET QUEUE: general
|
|
|
|
cpus = { check_max( 32, 'cpus' ) }
|
|
|
|
memory = { check_max( 62.GB * task.attempt, 'memory' ) }
|
|
|
|
time = { check_max( 16.h * task.attempt, 'time' ) }
|
|
|
|
}
|
|
|
|
withLabel:process_long {
|
|
|
|
// TARGET QUEUE: long
|
|
|
|
cpus = { check_max( 8, 'cpus' ) }
|
|
|
|
memory = { check_max( 96.GB, 'memory' ) }
|
|
|
|
time = { check_max( 72.h * task.attempt, 'time' ) }
|
|
|
|
}
|
|
|
|
withLabel:process_high_memory {
|
|
|
|
// TARGET QUEUE: large memory
|
|
|
|
cpus = { check_max( 10 * task.attempt, 'cpus' ) }
|
|
|
|
memory = { check_max( 120.GB * task.attempt, 'memory' ) }
|
|
|
|
time = { check_max( 12.h * task.attempt, 'time' ) }
|
|
|
|
}
|
2020-12-18 15:34:56 +00:00
|
|
|
}
|