a b/conf/base.config
1
/*
2
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3
    nf-core/deepmodeloptim Nextflow base config file
4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5
    A 'blank slate' config file, appropriate for general use on most high performance
6
    compute environments. Assumes that all software is installed and available on
7
    the PATH. Runs in `local` mode - all jobs will be run on the logged in environment.
8
----------------------------------------------------------------------------------------
9
*/
10
11
process {
12
13
    // TODO nf-core: Check the defaults for all processes
14
    cpus   = { 1      * task.attempt }
15
    memory = { 6.GB   * task.attempt }
16
    time   = { 4.h    * task.attempt }
17
18
    errorStrategy = { task.exitStatus in ((130..145) + 104) ? 'retry' : 'finish' }
19
    maxRetries    = 1
20
    maxErrors     = '-1'
21
22
    // Process-specific resource requirements
23
    // NOTE - Please try and reuse the labels below as much as possible.
24
    //        These labels are used and recognised by default in DSL2 files hosted on nf-core/modules.
25
    //        If possible, it would be nice to keep the same label naming convention when
26
    //        adding in your local modules too.
27
    // TODO nf-core: Customise requirements for specific processes.
28
    // See https://www.nextflow.io/docs/latest/config.html#config-process-selectors
29
    withLabel:process_single {
30
        cpus   = { 1                   }
31
        memory = { 6.GB * task.attempt }
32
        time   = { 4.h  * task.attempt }
33
    }
34
    withLabel:process_low {
35
        cpus   = { 2     * task.attempt }
36
        memory = { 12.GB * task.attempt }
37
        time   = { 4.h   * task.attempt }
38
    }
39
    withLabel:process_medium {
40
        cpus   = { 6     * task.attempt }
41
        memory = { 36.GB * task.attempt }
42
        time   = { 8.h   * task.attempt }
43
    }
44
    withLabel:process_high {
45
        cpus   = { 12    * task.attempt }
46
        memory = { 72.GB * task.attempt }
47
        time   = { 16.h  * task.attempt }
48
    }
49
    withLabel:process_long {
50
        time   = { 20.h  * task.attempt }
51
    }
52
    withLabel:process_high_memory {
53
        memory = { 200.GB * task.attempt }
54
    }
55
    withLabel:error_ignore {
56
        errorStrategy = 'ignore'
57
    }
58
    withLabel:error_retry {
59
        errorStrategy = 'retry'
60
        maxRetries    = 2
61
    }
62
}