-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathbase.config
26 lines (23 loc) · 1.04 KB
/
base.config
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
process {
cpus = { methods.check_limits( 1 * task.attempt, 'cpus' ) }
commonRetryCodes = [104, 134, 137, 139, 143, 247] // Common out-of-memory error codes
if (params.input_type == 'bam') {
withName: 'call_sSNV_Strelka2' {
ext.retry_codes = [1] // call_sSNV_Strelka2 doesn't differentiate memory errors
}
}
errorStrategy = { task.exitStatus in (((task?.ext?.retry_codes) ? task.ext.retry_codes : []) + process.commonRetryCodes) ? 'retry' : 'terminate' }
maxRetries = 1
withLabel:process_low {
cpus = { methods.check_limits( 2 * task.attempt, 'cpus' ) }
memory = { methods.check_limits( 3.GB * task.attempt, 'memory' ) }
}
withLabel:process_medium {
cpus = { methods.check_limits( 6 * task.attempt, 'cpus' ) }
memory = { methods.check_limits( 42.GB * task.attempt, 'memory' ) }
}
withLabel:process_high {
cpus = { methods.check_limits(12 * task.attempt, 'cpus' ) }
memory = { methods.check_limits( 84.GB * task.attempt, 'memory' ) }
}
}