1
0
Fork 0
mirror of https://github.com/MillironX/nf-configs.git synced 2024-11-10 20:13:09 +00:00

Update imperial.config

Multiple process level updates reflecting the latest job sizing guidelines for the Imperial HPC
This commit is contained in:
Combiz Khozoie 2022-02-10 23:02:47 +00:00 committed by GitHub
parent 81a273c730
commit fe5474a029
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1,37 +1,66 @@
//Profile config names for nf-core/configs
params {
// Config Params
config_profile_description = 'Imperial College London - HPC Profile -- provided by nf-core/configs.'
config_profile_contact = 'NA'
config_profile_url = 'https://www.imperial.ac.uk/admin-services/ict/self-service/research-support/rcs/'
// 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/'
// Resources
max_memory = 256.GB
max_cpus = 32
max_time = 72.h
// Resources
max_memory = 480.GB
max_cpus = 40
max_time = 1000.h
}
executor {
$pbspro {
queueSize = 50
}
$pbspro {
queueSize = 50
}
$local {
cpus = 2
queueSize = 1
memory = '32 GB'
}
$local {
cpus = 2
queueSize = 1
memory = '6 GB'
}
}
singularity {
enabled = true
autoMounts = true
runOptions = "-B /rds/,/rds/general/user/$USER/ephemeral/tmp/:/tmp,/rds/general/user/$USER/ephemeral/tmp/:/var/tmp"
enabled = true
autoMounts = true
runOptions = "-B /rds/,/rds/general/user/$USER/ephemeral/tmp/:/tmp,/rds/general/user/$USER/ephemeral/tmp/:/var/tmp"
}
process {
executor = 'pbspro'
executor = 'pbspro'
// 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' ) }
}
}