// base.config // use this config file to modify process resource allocation // PROCESS RESOURCES process { // top-level configuration groups withLabel: "low" { time = 30.d memory = 500.GB cpus = 28 } withLabel: "mid" { time = 30.d memory = 500.GB cpus = 28 } withLabel: "high" { time = 30.d memory = 500.GB cpus = 28 } withLabel: "finish" { maxRetries = 3 errorStrategy = { -> if( (task.exitStatus in [140,141,143,137,104,134,139] && task.attempt > 3) || (!(task.exitStatus in [140,141,143,137,104,134,139]) && task.attempt > 1 ) ){ return 'finish' } else if(task.exitStatus in [140,141,143,137,104,134,139]){ return 'retry' } else { sleep(Math.pow(2, task.attempt) * 1000 as long); return 'retry' } } } withLabel: "ignore" { maxRetries = 3 errorStrategy = { -> if( (task.exitStatus in [140,141,143,137,104,134,139] && task.attempt > 3) || (!(task.exitStatus in [140,141,143,137,104,134,139]) && task.attempt > 1 ) ){ return 'ignore' } else if(task.exitStatus in [140,141,143,137,104,134,139]){ return 'retry' } else { sleep(Math.pow(2, task.attempt) * 1000 as long); return 'retry' } } } // configuration for initial samtools sort, calmd, index withName: "preprocessing" { // label 'low' || 'high' // label 'finish' time = 30.d memory = 500.GB cpus = 28 //maxRetries = 1 } // configuration for masking (genomic or bisulfite) withName: "masking" { // label 'low' || 'high' // label 'finish' memory = 500.GB cpus = 28 } // configuration for khmer withName: "khmer" { // label 'low' || 'high' // label 'finish' memory = 500.GB cpus = 28 } // configuration for kwip withName: "kwip" { // label 'low' || 'high' // label 'finish' memory = 500.GB cpus = 28 } // configuration for clustering kwip results withName: "clustering" { // label 'low' // label 'finish' memory = 500.GB cpus = 28 } // configuration for freebayes-parallel withName: "freebayes" { // label 'low' || 'high' // label 'finish' memory = 500.GB cpus = 28 } // configuration for samtools sort, index withName: "sorting" { // label 'low' || 'high' // label 'finish' //time = { 2.h * task.attempt } memory = 500.GB cpus = 28 //maxRetries = 1 } // configuration for extracting fastq reads back from masked alignments withName: "extracting" { // label 'low' || 'high' // label 'finish' //time = { 2.h * task.attempt } memory = 500.GB cpus = 28 //maxRetries = 1 } // configuration for bcftools filtering withName: "bcftools" { // label 'low' || 'high' // label 'finish' //time = { 2.h * task.attempt } memory = 500.GB cpus = 28 //maxRetries = 1 } // configuration for plot-vcfstats withName: "plot_vcfstats" { // label 'low' // label 'ignore' //time = { 2.h * task.attempt } memory = 500.GB cpus = 28 //maxRetries = 1 } }