From 8993b5c662428a0bcdc5d2fd4806812b061db529 Mon Sep 17 00:00:00 2001 From: Ruben Vorderman <r.h.p.vorderman@lumc.nl> Date: Mon, 22 Aug 2022 14:25:59 +0200 Subject: [PATCH] Use gebibytes instead of gigabytes --- CPAT.wdl | 4 +-- bam2fastx.wdl | 4 +-- bcftools.wdl | 10 +++---- bedtools.wdl | 16 +++++------ biowdl.wdl | 2 +- bowtie.wdl | 2 +- bwa-mem2.wdl | 4 +-- bwa.wdl | 6 ++-- ccs.wdl | 2 +- centrifuge.wdl | 10 +++---- chunked-scatter.wdl | 4 +-- clever.wdl | 4 +-- collect-columns.wdl | 2 +- common.wdl | 20 +++++++------- cutadapt.wdl | 2 +- deconstructsigs.wdl | 2 +- deepvariant.wdl | 2 +- delly.wdl | 2 +- duphold.wdl | 2 +- extractSigPredictHRD.wdl | 2 +- fastqc.wdl | 2 +- fastqsplitter.wdl | 2 +- fgbio.wdl | 2 +- flash.wdl | 2 +- gatk.wdl | 56 ++++++++++++++++++------------------- gffcompare.wdl | 4 +-- gffread.wdl | 4 +-- gridss.wdl | 10 +++---- hisat2.wdl | 2 +- hmftools.wdl | 34 +++++++++++------------ htseq.wdl | 4 +-- isoseq3.wdl | 2 +- lima.wdl | 2 +- macs2.wdl | 2 +- manta.wdl | 4 +-- minimap2.wdl | 4 +-- multiqc.wdl | 6 ++-- nanopack.wdl | 4 +-- pacbio.wdl | 4 +-- pbbam.wdl | 2 +- pbmm2.wdl | 2 +- peach.wdl | 2 +- picard.wdl | 60 ++++++++++++++++++++-------------------- prepareShiny.wdl | 4 +-- rtg.wdl | 8 +++--- sambamba.wdl | 10 +++---- samtools.wdl | 34 +++++++++++------------ scripts | 2 +- smoove.wdl | 2 +- snpeff.wdl | 2 +- somaticseq.wdl | 10 +++---- spades.wdl | 2 +- star.wdl | 10 +++---- strelka.wdl | 4 +-- stringtie.wdl | 4 +-- survivor.wdl | 2 +- talon.wdl | 20 +++++++------- transcriptclean.wdl | 6 ++-- umi-tools.wdl | 6 ++-- umi.wdl | 4 +-- unicycler.wdl | 2 +- vardict.wdl | 2 +- vt.wdl | 2 +- whatshap.wdl | 6 ++-- wisestork.wdl | 8 +++--- 65 files changed, 234 insertions(+), 234 deletions(-) diff --git a/CPAT.wdl b/CPAT.wdl index e6cef3e..b96ea0d 100644 --- a/CPAT.wdl +++ b/CPAT.wdl @@ -34,8 +34,8 @@ task CPAT { Array[String]? startCodons Array[String]? stopCodons - String memory = "4G" - Int timeMinutes = 10 + ceil(size(gene, "G") * 30) + String memory = "4GiB" + Int timeMinutes = 10 + ceil(size(gene, "GiB") * 30) String dockerImage = "quay.io/biocontainers/cpat:3.0.4--py39hcbe4a3b_0" } diff --git a/bam2fastx.wdl b/bam2fastx.wdl index 0bdccca..62827fd 100644 --- a/bam2fastx.wdl +++ b/bam2fastx.wdl @@ -30,7 +30,7 @@ task Bam2Fasta { String? seqIdPrefix - String memory = "2G" + String memory = "2GiB" Int timeMinutes = 15 String dockerImage = "quay.io/biocontainers/bam2fastx:1.3.1--hf05d43a_1" } @@ -98,7 +98,7 @@ task Bam2Fastq { String? seqIdPrefix - String memory = "2G" + String memory = "2GiB" Int timeMinutes = 15 String dockerImage = "quay.io/biocontainers/bam2fastx:1.3.1--hf05d43a_1" } diff --git a/bcftools.wdl b/bcftools.wdl index 2bf1c73..726d2e3 100644 --- a/bcftools.wdl +++ b/bcftools.wdl @@ -47,7 +47,7 @@ task Annotate { File? samplesFile Int threads = 0 - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 60 + ceil(size(inputFile, "G")) String dockerImage = "quay.io/biocontainers/bcftools:1.10.2--h4f4756c_2" } @@ -138,7 +138,7 @@ task Filter { String? softFilter String outputPath = "./filtered.vcf.gz" - String memory = "256M" + String memory = "256MiB" Int timeMinutes = 1 + ceil(size(vcf, "G")) String dockerImage = "quay.io/biocontainers/bcftools:1.10.2--h4f4756c_2" } @@ -186,7 +186,7 @@ task Sort { String outputPath = "output.vcf.gz" String tmpDir = "./sorting-tmp" - String memory = "5G" + String memory = "5GiB" Int timeMinutes = 1 + ceil(size(inputFile, "G")) * 5 String dockerImage = "quay.io/biocontainers/bcftools:1.10.2--h4f4756c_2" } @@ -261,7 +261,7 @@ task Stats { String? userTsTv Int threads = 0 - String memory = "256M" + String memory = "256MiB" Int timeMinutes = 1 + 2* ceil(size(select_all([inputVcf, compareVcf]), "G")) # TODO: Estimate, 2 minutes per GB, refine later. String dockerImage = "quay.io/biocontainers/bcftools:1.10.2--h4f4756c_2" } @@ -350,7 +350,7 @@ task View { String? exclude String? include - String memory = "256M" + String memory = "256MiB" Int timeMinutes = 1 + ceil(size(inputFile, "G")) String dockerImage = "quay.io/biocontainers/bcftools:1.10.2--h4f4756c_2" } diff --git a/bedtools.wdl b/bedtools.wdl index 80a281d..fe18ede 100644 --- a/bedtools.wdl +++ b/bedtools.wdl @@ -26,7 +26,7 @@ task Complement { File inputBed String outputBed = basename(inputBed, "\.bed") + ".complement.bed" - String memory = "~{512 + ceil(size([inputBed, faidx], "M"))}M" + String memory = "~{512 + ceil(size([inputBed, faidx], "MiB"))}MiB" Int timeMinutes = 1 + ceil(size([inputBed, faidx], "G")) String dockerImage = "quay.io/biocontainers/bedtools:2.23.0--hdbcaa40_3" } @@ -75,7 +75,7 @@ task Coverage { File? bIndex String outputPath = "./coverage.tsv" - String memory = "8G" + String memory = "8GiB" Int timeMinutes = 320 String dockerImage = "quay.io/biocontainers/bedtools:2.30.0--h7d7f7ad_2" } @@ -120,7 +120,7 @@ task Merge { File inputBed String outputBed = "merged.bed" - String memory = "~{512 + ceil(size(inputBed, "M"))}M" + String memory = "~{512 + ceil(size(inputBed, "MiB"))}MiB" Int timeMinutes = 1 + ceil(size(inputBed, "G")) String dockerImage = "quay.io/biocontainers/bedtools:2.23.0--hdbcaa40_3" } @@ -159,7 +159,7 @@ task MergeBedFiles { Array[File]+ bedFiles String outputBed = "merged.bed" - String memory = "~{512 + ceil(size(bedFiles, "M"))}M" + String memory = "~{512 + ceil(size(bedFiles, "MiB"))}MiB" Int timeMinutes = 1 + ceil(size(bedFiles, "G")) String dockerImage = "quay.io/biocontainers/bedtools:2.23.0--hdbcaa40_3" } @@ -207,8 +207,8 @@ task Sort { File? genome File? faidx - String memory = "~{512 + ceil(size(inputBed, "M"))}M" - Int timeMinutes = 1 + ceil(size(inputBed, "G")) + String memory = "~{512 + ceil(size(inputBed, "MiB"))}MiB" + Int timeMinutes = 1 + ceil(size(inputBed, "GiB")) String dockerImage = "quay.io/biocontainers/bedtools:2.23.0--hdbcaa40_3" } @@ -267,8 +267,8 @@ task Intersect { File? faidx # Giving a faidx file will set the sorted option. - String memory = "~{512 + ceil(size([regionsA, regionsB], "M"))}M" - Int timeMinutes = 1 + ceil(size([regionsA, regionsB], "G")) + String memory = "~{512 + ceil(size([regionsA, regionsB], "MiB"))}MiB" + Int timeMinutes = 1 + ceil(size([regionsA, regionsB], "GiB")) String dockerImage = "quay.io/biocontainers/bedtools:2.23.0--hdbcaa40_3" } diff --git a/biowdl.wdl b/biowdl.wdl index dead830..f891618 100644 --- a/biowdl.wdl +++ b/biowdl.wdl @@ -32,7 +32,7 @@ task InputConverter { Boolean checkFileMd5sums=false Boolean old=false - String memory = "128M" + String memory = "128MiB" Int timeMinutes = 1 String dockerImage = "quay.io/biocontainers/biowdl-input-converter:0.3.0--pyhdfd78af_0" } diff --git a/bowtie.wdl b/bowtie.wdl index 87210dc..7e81759 100644 --- a/bowtie.wdl +++ b/bowtie.wdl @@ -37,7 +37,7 @@ task Bowtie { String picardXmx = "4G" Int threads = 1 - String memory = "~{5 + ceil(size(indexFiles, "G"))}G" + String memory = "~{5 + ceil(size(indexFiles, "GiB"))}GiB" Int timeMinutes = 1 + ceil(size(flatten([readsUpstream, readsDownstream]), "G") * 300 / threads) # Image contains bowtie=1.2.2 and picard=2.9.2 String dockerImage = "quay.io/biocontainers/mulled-v2-bfe71839265127576d3cd749c056e7b168308d56:1d8bec77b352cdcf3e9ff3d20af238b33ed96eae-0" diff --git a/bwa-mem2.wdl b/bwa-mem2.wdl index 4566e68..b3db0ad 100644 --- a/bwa-mem2.wdl +++ b/bwa-mem2.wdl @@ -36,7 +36,7 @@ task Mem { Int threads = 4 Int? memoryGb - Int timeMinutes = 1 + ceil(size([read1, read2], "G") * 220 / threads) + Int timeMinutes = 1 + ceil(size([read1, read2], "GiB") * 220 / threads) # Contains bwa-mem2 2.0 bwakit 0.7.17.dev1 and samtools 1.10. String dockerImage = "quay.io/biocontainers/mulled-v2-6a15c99309c82b345497d24489bee67bbb76c2f6:1c9c3227b9bf825a8dc9726a25701aa23c0b1f12-0" } @@ -84,7 +84,7 @@ task Mem { # One extra thread for bwa-postalt + samtools is not needed. # These only use 5-10% of compute power and not always simultaneously. cpu: threads - memory: "~{select_first([memoryGb, estimatedMemoryGb])}G" + memory: "~{select_first([memoryGb, estimatedMemoryGb])}GiB" time_minutes: timeMinutes docker: dockerImage } diff --git a/bwa.wdl b/bwa.wdl index 373de62..d4f4495 100644 --- a/bwa.wdl +++ b/bwa.wdl @@ -37,7 +37,7 @@ task Mem { Int threads = 4 Int? memoryGb - Int timeMinutes = 10 + ceil(size([read1, read2], "G") * 300 / threads) + Int timeMinutes = 10 + ceil(size([read1, read2], "GiB") * 300 / threads) # Contains bwa 0.7.17 bwakit 0.7.17.dev1 and samtools 1.10. String dockerImage = "quay.io/biocontainers/mulled-v2-ad317f19f5881324e963f6a6d464d696a2825ab6:c59b7a73c87a9fe81737d5d628e10a3b5807f453-0" } @@ -48,7 +48,7 @@ task Mem { Int estimatedSortThreads = if threads == 1 then 1 else 1 + ceil(threads / 4.0) Int totalSortThreads = select_first([sortThreads, estimatedSortThreads]) # BWA needs slightly more memory than the size of the index files (~10%). Add a margin for safety here. - Int estimatedMemoryGb = 10 + ceil(size(bwaIndex.indexFiles, "G") * 2) + sortMemoryPerThreadGb * totalSortThreads + Int estimatedMemoryGb = 10 + ceil(size(bwaIndex.indexFiles, "GiB") * 2) + sortMemoryPerThreadGb * totalSortThreads # The bwa postalt script is out commented as soon as usePostalt = false. # This hack was tested with bash, dash and ash. It seems that comments in between pipes work for all of them. @@ -81,7 +81,7 @@ task Mem { # One extra thread for bwa-postalt + samtools is not needed. # These only use 5-10% of compute power and not always simultaneously. cpu: threads - memory: "~{select_first([memoryGb, estimatedMemoryGb])}G" + memory: "~{select_first([memoryGb, estimatedMemoryGb])}GiB" time_minutes: timeMinutes docker: dockerImage } diff --git a/ccs.wdl b/ccs.wdl index 29f1a7f..27db15a 100644 --- a/ccs.wdl +++ b/ccs.wdl @@ -42,7 +42,7 @@ task CCS { String? chunkString Int threads = 2 - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 1440 String dockerImage = "quay.io/biocontainers/pbccs:6.0.0--h9ee0642_2" } diff --git a/centrifuge.wdl b/centrifuge.wdl index 07dc7f8..757af23 100644 --- a/centrifuge.wdl +++ b/centrifuge.wdl @@ -36,7 +36,7 @@ task Build { File? sizeTable Int threads = 5 - String memory = "20G" + String memory = "20GiB" Int timeMinutes = 2880 String dockerImage = "quay.io/biocontainers/centrifuge:1.0.4_beta--he513fc3_5" } @@ -109,7 +109,7 @@ task Classify { String? excludeTaxIDs Int threads = 4 - String memory = "16G" + String memory = "16GiB" Int timeMinutes = 2880 String dockerImage = "quay.io/biocontainers/centrifuge:1.0.4_beta--he513fc3_5" } @@ -186,7 +186,7 @@ task Inspect { Int? across - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 1 String dockerImage = "quay.io/biocontainers/centrifuge:1.0.4_beta--he513fc3_5" } @@ -245,7 +245,7 @@ task KReport { Int? minimumScore Int? minimumLength - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 10 String dockerImage = "quay.io/biocontainers/centrifuge:1.0.4_beta--he513fc3_5" } @@ -303,7 +303,7 @@ task KTimportTaxonomy { File inputFile String outputPrefix - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 1 String dockerImage = "biocontainers/krona:v2.7.1_cv1" } diff --git a/chunked-scatter.wdl b/chunked-scatter.wdl index 66954c3..af24b13 100644 --- a/chunked-scatter.wdl +++ b/chunked-scatter.wdl @@ -30,7 +30,7 @@ task ChunkedScatter { Int? overlap Int? minimumBasesPerFile - String memory = "256M" + String memory = "256MiB" Int timeMinutes = 2 String dockerImage = "quay.io/biocontainers/chunked-scatter:1.0.0--py_0" } @@ -84,7 +84,7 @@ task ScatterRegions { Int? scatterSize - String memory = "256M" + String memory = "256MiB" Int timeMinutes = 2 String dockerImage = "quay.io/biocontainers/chunked-scatter:1.0.0--py_0" } diff --git a/clever.wdl b/clever.wdl index 186be51..791a0ba 100644 --- a/clever.wdl +++ b/clever.wdl @@ -34,7 +34,7 @@ task Mateclever { Int maxOffset = 150 Int threads = 10 - String memory = "15G" + String memory = "15GiB" Int timeMinutes = 600 String dockerImage = "quay.io/biocontainers/clever-toolkit:2.4--py36hcfe0e84_6" } @@ -94,7 +94,7 @@ task Prediction { String outputPath = "./clever" Int threads = 10 - String memory = "55G" + String memory = "55GiB" Int timeMinutes = 480 String dockerImage = "quay.io/biocontainers/clever-toolkit:2.4--py36hcfe0e84_6" } diff --git a/collect-columns.wdl b/collect-columns.wdl index 3d65c7e..03ccb6f 100644 --- a/collect-columns.wdl +++ b/collect-columns.wdl @@ -62,7 +62,7 @@ task CollectColumns { } runtime { - memory: "~{memoryGb}G" + memory: "~{memoryGb}GiB" time_minutes: timeMinutes docker: dockerImage } diff --git a/common.wdl b/common.wdl index 1e4fc8c..1ce2895 100644 --- a/common.wdl +++ b/common.wdl @@ -25,7 +25,7 @@ task AppendToStringArray { Array[String] array String string - String memory = "1G" + String memory = "1GiB" } command { @@ -51,7 +51,7 @@ task CheckFileMD5 { # By default cromwell expects /bin/bash to be present in the container. # The 'bash' container does not fill this requirement. (It is in /usr/local/bin/bash) # Use a stable version of debian:stretch-slim for this. (Smaller than ubuntu) - String memory = "1G" + String memory = "1GiB" String dockerImage = "debian@sha256:f05c05a218b7a4a5fe979045b1c8e2a9ec3524e5611ebfdd0ef5b8040f9008fa" } @@ -75,7 +75,7 @@ task ConcatenateTextFiles { Boolean unzip = false Boolean zip = false - String memory = "1G" + String memory = "1GiB" } # When input and output is both compressed decompression is not needed. @@ -104,7 +104,7 @@ task Copy { Boolean recursive = false # Version not that important as long as it is stable. - String memory = "1G" + String memory = "1GiB" String dockerImage = "debian@sha256:f05c05a218b7a4a5fe979045b1c8e2a9ec3524e5611ebfdd0ef5b8040f9008fa" } @@ -132,7 +132,7 @@ task CreateLink { String inputFile String outputPath - String memory = "1G" + String memory = "1GiB" } command { @@ -170,7 +170,7 @@ task GetSamplePositionInArray { runtime { # 4 gigs of memory to be able to build the docker image in singularity. - memory: "4G" + memory: "4GiB" docker: dockerImage timeMinutes: 5 } @@ -190,7 +190,7 @@ task MapMd5 { input { Map[String,String] map - String memory = "1G" + String memory = "1GiB" String dockerImage = "debian@sha256:f05c05a218b7a4a5fe979045b1c8e2a9ec3524e5611ebfdd0ef5b8040f9008fa" } @@ -214,7 +214,7 @@ task StringArrayMd5 { input { Array[String] stringArray - String memory = "1G" + String memory = "1GiB" String dockerImage = "debian@sha256:f05c05a218b7a4a5fe979045b1c8e2a9ec3524e5611ebfdd0ef5b8040f9008fa" } @@ -238,7 +238,7 @@ task TextToFile { String text String outputFile = "out.txt" - String memory = "1G" + String memory = "1GiB" Int timeMinutes = 1 String dockerImage = "debian@sha256:f05c05a218b7a4a5fe979045b1c8e2a9ec3524e5611ebfdd0ef5b8040f9008fa" } @@ -274,7 +274,7 @@ task YamlToJson { File yaml String outputJson = basename(yaml, "\.ya?ml$") + ".json" - String memory = "128M" + String memory = "128MiB" Int timeMinutes = 1 # biowdl-input-converter has python and pyyaml. String dockerImage = "quay.io/biocontainers/biowdl-input-converter:0.3.0--pyhdfd78af_0" diff --git a/cutadapt.wdl b/cutadapt.wdl index b49a95d..9a67692 100644 --- a/cutadapt.wdl +++ b/cutadapt.wdl @@ -83,7 +83,7 @@ task Cutadapt { Boolean? noZeroCap Int cores = 4 - String memory = "5G" + String memory = "5GiB" Int timeMinutes = 1 + ceil(size([read1, read2], "G") * 12.0 / cores) String dockerImage = "quay.io/biocontainers/cutadapt:2.10--py37hf01694f_1" } diff --git a/deconstructsigs.wdl b/deconstructsigs.wdl index ef47e3e..c44bf9c 100644 --- a/deconstructsigs.wdl +++ b/deconstructsigs.wdl @@ -27,7 +27,7 @@ task DeconstructSigs { String outputPath = "./signatures.rds" Int timeMinutes = 15 - String memory = "4G" + String memory = "4GiB" String dockerImage = "quay.io/biocontainers/r-deconstructsigs:1.9.0--r41hdfd78af_1" } diff --git a/deepvariant.wdl b/deepvariant.wdl index 28aee81..25d05bd 100644 --- a/deepvariant.wdl +++ b/deepvariant.wdl @@ -37,7 +37,7 @@ task RunDeepVariant { String? sampleName Boolean? VCFStatsReport = true - String memory = "3G" + String memory = "3GiB" Int timeMinutes = 5000 String dockerImage = "google/deepvariant:1.0.0" } diff --git a/delly.wdl b/delly.wdl index bf00ed3..7333c5f 100644 --- a/delly.wdl +++ b/delly.wdl @@ -28,7 +28,7 @@ task CallSV { File referenceFastaFai String outputPath = "./delly/delly.bcf" - String memory = "15G" + String memory = "15GiB" Int timeMinutes = 300 String dockerImage = "quay.io/biocontainers/delly:0.8.1--h4037b6b_1" } diff --git a/duphold.wdl b/duphold.wdl index 80fe31d..0426da5 100644 --- a/duphold.wdl +++ b/duphold.wdl @@ -30,7 +30,7 @@ task Duphold { String sample String outputPath = "./duphold.vcf" - String memory = "15G" + String memory = "15GiB" Int timeMinutes = 1440 String dockerImage = "quay.io/biocontainers/duphold:0.2.1--h516909a_1" } diff --git a/extractSigPredictHRD.wdl b/extractSigPredictHRD.wdl index 2b5d978..1520b60 100644 --- a/extractSigPredictHRD.wdl +++ b/extractSigPredictHRD.wdl @@ -30,7 +30,7 @@ task ExtractSigPredictHRD { File svVcfIndex Boolean hg38 = false - String memory = "3G" + String memory = "3GiB" Int timeMinutes = 10 String dockerImage = "quay.io/biowdl/chord-mutsigextractor:2.00_1.14" } diff --git a/fastqc.wdl b/fastqc.wdl index 3a07db4..d821e53 100644 --- a/fastqc.wdl +++ b/fastqc.wdl @@ -45,7 +45,7 @@ task Fastqc { # weird edge case fastq's. String javaXmx="1750M" Int threads = 1 - String memory = "2G" + String memory = "2GiB" Int timeMinutes = 1 + ceil(size(seqFile, "G")) * 4 String dockerImage = "quay.io/biocontainers/fastqc:0.11.9--0" diff --git a/fastqsplitter.wdl b/fastqsplitter.wdl index 25a5095..4a02697 100644 --- a/fastqsplitter.wdl +++ b/fastqsplitter.wdl @@ -63,7 +63,7 @@ task Fastqsplitter { runtime { cpu: cores - memory: "~{memory}G" + memory: "~{memory}GiB" docker: dockerImage } } diff --git a/fgbio.wdl b/fgbio.wdl index d50906d..15fb0ea 100644 --- a/fgbio.wdl +++ b/fgbio.wdl @@ -26,7 +26,7 @@ task AnnotateBamWithUmis { File inputUmi String outputPath - String memory = "120G" + String memory = "120GiB" Int timeMinutes = 360 String javaXmx="100G" String dockerImage = "quay.io/biocontainers/fgbio:1.4.0--hdfd78af_0" diff --git a/flash.wdl b/flash.wdl index c4554c5..7b50e0d 100644 --- a/flash.wdl +++ b/flash.wdl @@ -34,7 +34,7 @@ task Flash { Int? maxOverlap Int threads = 2 - String memory = "2G" + String memory = "2GiB" } command { diff --git a/gatk.wdl b/gatk.wdl index 5cf7c67..0b93efe 100644 --- a/gatk.wdl +++ b/gatk.wdl @@ -34,7 +34,7 @@ task AnnotateIntervals { File? segmentalDuplicationTrack String javaXmx = "2G" - String memory = "3G" + String memory = "3GiB" Int timeMinutes = 5 String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -129,7 +129,7 @@ task ApplyBQSR { } runtime { - memory: "~{memoryMb}M" + memory: "~{memoryMb}MiB" time_minutes: timeMinutes docker: dockerImage } @@ -197,7 +197,7 @@ task BaseRecalibrator { } runtime { - memory: "~{memoryMb}M" + memory: "~{memoryMb}MiB" time_minutes: timeMinutes docker: dockerImage } @@ -232,7 +232,7 @@ task CalculateContamination { File? normalPileups String javaXmx = "12G" - String memory = "13G" + String memory = "13GiB" Int timeMinutes = 180 String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -279,7 +279,7 @@ task CallCopyRatioSegments { File copyRatioSegments String javaXmx = "2G" - String memory = "3G" + String memory = "3GiB" Int timeMinutes = 2 String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -332,7 +332,7 @@ task CollectAllelicCounts { File? commonVariantSitesIndex String javaXmx = "10G" - String memory = "11G" + String memory = "11GiB" Int timeMinutes = 120 String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -390,7 +390,7 @@ task CollectReadCounts { String intervalMergingRule = "OVERLAPPING_ONLY" String javaXmx = "7G" - String memory = "8G" + String memory = "8GiB" Int timeMinutes = 1 + ceil(size(inputBam, "G") * 5) String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -449,7 +449,7 @@ task CombineGVCFs { File referenceFastaFai String javaXmx = "4G" - String memory = "5G" + String memory = "5GiB" Int timeMinutes = 1 + ceil(size(gvcfFiles, "G") * 8) String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -509,7 +509,7 @@ task CombineVariants { String outputPath String javaXmx = "12G" - String memory = "13G" + String memory = "13GiB" Int timeMinutes = 180 String dockerImage = "broadinstitute/gatk3:3.8-1" } @@ -579,7 +579,7 @@ task CreateReadCountPanelOfNormals { File? annotatedIntervals String javaXmx = "7G" - String memory = "8G" + String memory = "8GiB" Int timeMinutes = 5 # The biocontainer causes a spark related error for some reason. String dockerImage = "broadinstitute/gatk:4.1.8.0" @@ -629,7 +629,7 @@ task DenoiseReadCounts { File? annotatedIntervals String javaXmx = "4G" - String memory = "5G" + String memory = "5GiB" Int timeMinutes = 5 String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -690,7 +690,7 @@ task FilterMutectCalls { File? artifactPriors String javaXmx = "12G" - String memory = "13G" + String memory = "13GiB" Int timeMinutes = 60 String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -775,7 +775,7 @@ task GatherBqsrReports { } runtime { - memory: "~{memoryMb}M" + memory: "~{memoryMb}MiB" time_minutes: timeMinutes docker: dockerImage } @@ -805,7 +805,7 @@ task GenomicsDBImport { String? tmpDir String javaXmx = "4G" - String memory = "5G" + String memory = "5GiB" Int timeMinutes = 180 String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -866,7 +866,7 @@ task GenotypeGVCFs { File? pedigree String javaXmx = "6G" - String memory = "7G" + String memory = "7GiB" Int timeMinutes = 120 # This will likely be used with intervals, as such size based estimation can't be used. String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -932,7 +932,7 @@ task GetPileupSummaries { String outputPrefix String javaXmx = "12G" - String memory = "13G" + String memory = "13GiB" Int timeMinutes = 120 String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -1032,7 +1032,7 @@ task HaplotypeCaller { } runtime { - memory: "~{memoryMb}M" + memory: "~{memoryMb}MiB" time_minutes: timeMinutes docker: dockerImage } @@ -1073,7 +1073,7 @@ task LearnReadOrientationModel { Array[File]+ f1r2TarGz String javaXmx = "12G" - String memory = "13G" + String memory = "13GiB" Int timeMinutes = 120 String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -1114,7 +1114,7 @@ task MergeStats { Array[File]+ stats String javaXmx = "14G" - String memory = "15G" + String memory = "15GiB" Int timeMinutes = 30 String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -1162,7 +1162,7 @@ task ModelSegments { File? normalAllelicCounts String javaXmx = "10G" - String memory = "11G" + String memory = "11GiB" Int timeMinutes = 60 String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -1250,7 +1250,7 @@ task MuTect2 { File? panelOfNormalsIndex String javaXmx = "4G" - String memory = "5G" + String memory = "5GiB" Int timeMinutes = 240 String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -1325,7 +1325,7 @@ task PlotDenoisedCopyRatios { Int? minimumContigLength String javaXmx = "3G" - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 2 String dockerImage = "broadinstitute/gatk:4.1.8.0" } @@ -1393,7 +1393,7 @@ task PlotModeledSegments { Int? minimumContigLength String javaXmx = "3G" - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 2 String dockerImage = "broadinstitute/gatk:4.1.8.0" } @@ -1454,7 +1454,7 @@ task PreprocessIntervals { File? intervals String javaXmx = "3G" - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 1 + ceil(size(referenceFasta, "G") * 6) String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -1516,7 +1516,7 @@ task SelectVariants { String? selectTypeToInclude String javaXmx = "4G" - String memory = "5G" + String memory = "5GiB" Int timeMinutes = 60 String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -1576,7 +1576,7 @@ task SplitNCigarReads { Array[File] intervals = [] String javaXmx = "4G" - String memory = "5G" + String memory = "5GiB" Int timeMinutes = 120 # This will likely be used with intervals, as such size based estimation can't be used. String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } @@ -1645,7 +1645,7 @@ task VariantEval { File? dbsnpVCFIndex String javaXmx = "4G" - String memory = "5G" + String memory = "5GiB" # TODO: Refine estimate. For now 4 minutes per GB of input. Int timeMinutes = ceil(size(flatten([evalVcfs, comparisonVcfs, select_all([referenceFasta, dbsnpVCF])]), "G") * 20) String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" @@ -1722,7 +1722,7 @@ task VariantFiltration { Array[File] intervals = [] String javaXmx = "4G" - String memory = "5G" + String memory = "5GiB" Int timeMinutes = 120 String dockerImage = "quay.io/biocontainers/gatk4:4.1.8.0--py38h37ae868_0" } diff --git a/gffcompare.wdl b/gffcompare.wdl index d06602b..fe1db0a 100644 --- a/gffcompare.wdl +++ b/gffcompare.wdl @@ -46,8 +46,8 @@ task GffCompare { Int? maxDistanceGroupingTranscriptStartSites String? namePrefix - String memory = "4G" - Int timeMinutes = 1 + ceil(size(inputGtfFiles, "G") * 30) + String memory = "4GiB" + Int timeMinutes = 1 + ceil(size(inputGtfFiles, "GiB") * 30) String dockerImage = "quay.io/biocontainers/gffcompare:0.10.6--h2d50403_0" # This workaround only works in the input section. diff --git a/gffread.wdl b/gffread.wdl index a04540f..26a2773 100644 --- a/gffread.wdl +++ b/gffread.wdl @@ -32,8 +32,8 @@ task GffRead { String? proteinFastaPath String? filteredGffPath - String memory = "4G" - Int timeMinutes = 1 + ceil(size(inputGff, "G") * 10) + String memory = "4GiB" + Int timeMinutes = 1 + ceil(size(inputGff, "GiB") * 10) String dockerImage = "quay.io/biocontainers/gffread:0.9.12--0" } diff --git a/gridss.wdl b/gridss.wdl index add3c08..cfe5375 100644 --- a/gridss.wdl +++ b/gridss.wdl @@ -33,7 +33,7 @@ task AnnotateInsertedSequence { Int threads = 8 String javaXmx = "8G" - String memory = "9G" + String memory = "9GiB" String dockerImage = "quay.io/biowdl/gridss:2.12.2" Int timeMinutes = 120 } @@ -85,7 +85,7 @@ task AnnotateSvTypes { File gridssVcfIndex String outputPath = "./gridss.svtyped.vcf.bgz" - String memory = "32G" + String memory = "32GiB" String dockerImage = "quay.io/biocontainers/bioconductor-structuralvariantannotation:1.10.0--r41hdfd78af_0" Int timeMinutes = 240 } @@ -201,7 +201,7 @@ task GRIDSS { runtime { cpu: threads - memory: "~{jvmHeapSizeGb + nonJvmMemoryGb}G" + memory: "~{jvmHeapSizeGb + nonJvmMemoryGb}GiB" time_minutes: timeMinutes # !UnknownRuntimeKey docker: dockerImage } @@ -239,7 +239,7 @@ task GridssAnnotateVcfRepeatmasker { File gridssVcfIndex String outputPath = "./gridss.repeatmasker_annotated.vcf.gz" - String memory = "25G" + String memory = "25GiB" Int threads = 8 String dockerImage = "quay.io/biowdl/gridss:2.12.2" Int timeMinutes = 1440 @@ -289,7 +289,7 @@ task Virusbreakend { File virusbreakendDB String outputPath = "./virusbreakend.vcf" - String memory = "75G" + String memory = "75GiB" Int threads = 12 String dockerImage = "quay.io/biowdl/gridss:2.12.2" Int timeMinutes = 320 diff --git a/hisat2.wdl b/hisat2.wdl index a2c0777..50fabc9 100644 --- a/hisat2.wdl +++ b/hisat2.wdl @@ -82,7 +82,7 @@ task Hisat2 { runtime { cpu: threads - memory: "~{select_first([memoryGb, estimatedMemoryGb])}G" + memory: "~{select_first([memoryGb, estimatedMemoryGb])}GiB" time_minutes: timeMinutes docker: dockerImage } diff --git a/hmftools.wdl b/hmftools.wdl index f878181..26ab4e4 100644 --- a/hmftools.wdl +++ b/hmftools.wdl @@ -35,7 +35,7 @@ task Amber { File referenceFastaDict Int threads = 2 - String memory = "70G" + String memory = "70GiB" String javaXmx = "64G" Int timeMinutes = 240 String dockerImage = "quay.io/biocontainers/hmftools-amber:3.5--0" @@ -112,7 +112,7 @@ task Cobalt { File gcProfile Int threads = 1 - String memory = "5G" + String memory = "5GiB" String javaXmx = "4G" Int timeMinutes = 480 String dockerImage = "quay.io/biocontainers/hmftools-cobalt:1.11--0" @@ -174,7 +174,7 @@ task CupGenerateReport { File cupData String outputDir = "./cuppa" - String memory = "5G" + String memory = "5GiB" Int timeMinutes = 10 String dockerImage = "quay.io/biowdl/cuppa:1.6" } @@ -242,7 +242,7 @@ task Cuppa { String outputDir = "./cuppa" String javaXmx = "4G" - String memory = "5G" + String memory = "5GiB" Int timeMinutes = 10 String dockerImage = "quay.io/biowdl/cuppa:1.6" } @@ -298,7 +298,7 @@ task CuppaChart { File cupData String outputDir = "./cuppa" - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 5 String dockerImage = "quay.io/biowdl/cuppa:1.6" } @@ -348,7 +348,7 @@ task Gripss { File vcfIndex String outputDir = "./" - String memory = "17G" + String memory = "17GiB" String javaXmx = "16G" Int timeMinutes = 50 String dockerImage = "quay.io/biocontainers/hmftools-gripss:2.0--hdfd78af_0" @@ -419,7 +419,7 @@ task GripssApplicationKt { File breakendPon File breakpointPon - String memory = "32G" + String memory = "32GiB" String javaXmx = "31G" Int timeMinutes = 45 String dockerImage = "quay.io/biocontainers/hmftools-gripss:1.11--hdfd78af_0" @@ -478,7 +478,7 @@ task GripssHardFilterApplicationKt { File inputVcf String outputPath = "gripss_hard_filter.vcf.gz" - String memory = "3G" + String memory = "3GiB" String javaXmx = "2G" Int timeMinutes = 15 String dockerImage = "quay.io/biocontainers/hmftools-gripss:1.11--hdfd78af_0" @@ -527,7 +527,7 @@ task HealthChecker { Array[File]+ purpleOutput String javaXmx = "2G" - String memory = "1G" + String memory = "3GiB" Int timeMinutes = 1 String dockerImage = "quay.io/biowdl/health-checker:3.2" } @@ -604,7 +604,7 @@ task Linx { File transExonDataCsv File transSpliceDataCsv - String memory = "9G" + String memory = "9iB" String javaXmx = "8G" Int timeMinutes = 10 String dockerImage = "quay.io/biocontainers/hmftools-linx:1.18--hdfd78af_0" @@ -690,7 +690,7 @@ task LinxVisualisations { Array[File]+ linxOutput Boolean plotReportable = true - String memory = "9G" + String memory = "9GiB" String javaXmx = "8G" Int timeMinutes = 1440 String dockerImage = "quay.io/biocontainers/hmftools-linx:1.18--hdfd78af_0" @@ -778,7 +778,7 @@ task Orange { File cohortMappingTsv File cohortPercentilesTsv - String memory = "17G" + String memory = "17GiB" String javaXmx = "16G" Int timeMinutes = 10 String dockerImage = "quay.io/biowdl/orange:v1.6" @@ -902,7 +902,7 @@ task Pave { Int timeMinutes = 50 String javaXmx = "8G" - String memory = "9G" + String memory = "9GiB" String dockerImage = "quay.io/biowdl/pave:v1.0" } @@ -979,7 +979,7 @@ task Protect { File chordPrediction File annotatedVirus - String memory = "9G" + String memory = "9GiB" String javaXmx = "8G" Int timeMinutes = 60 String dockerImage = "quay.io/biowdl/protect:v2.0" @@ -1078,7 +1078,7 @@ task Purple { Int threads = 1 Int timeMinutes = 30 - String memory = "9G" + String memory = "9GiB" String javaXmx = "8G" # clone of quay.io/biocontainers/hmftools-purple:3.2--hdfd78af_0 with 'ln -s /usr/local/lib/libwebp.so.7 /usr/local/lib/libwebp.so.6' String dockerImage = "quay.io/biowdl/hmftools-purple:3.2" @@ -1227,7 +1227,7 @@ task Sage { Int threads = 32 String javaXmx = "16G" - String memory = "20G" + String memory = "20GiB" Int timeMinutes = 720 String dockerImage = "quay.io/biocontainers/hmftools-sage:2.8--hdfd78af_1" } @@ -1315,7 +1315,7 @@ task VirusInterpreter { File virusReportingDbTsv String outputDir = "." - String memory = "3G" + String memory = "3GiB" String javaXmx = "2G" Int timeMinutes = 15 String dockerImage = "quay.io/biowdl/virus-interpreter:1.2" diff --git a/htseq.wdl b/htseq.wdl index 76d3bb8..92bc442 100644 --- a/htseq.wdl +++ b/htseq.wdl @@ -33,8 +33,8 @@ task HTSeqCount { String? idattr Int nprocesses = 1 - String memory = "8G" - Int timeMinutes = 1440 #10 + ceil(size(inputBams, "G") * 60) FIXME + String memory = "8GiB" + Int timeMinutes = 1440 #10 + ceil(size(inputBams, "GiB") * 60) FIXME String dockerImage = "quay.io/biocontainers/htseq:0.12.4--py37hb3f55d8_0" } diff --git a/isoseq3.wdl b/isoseq3.wdl index aacbfc6..77f19f8 100644 --- a/isoseq3.wdl +++ b/isoseq3.wdl @@ -32,7 +32,7 @@ task Refine { String outputNamePrefix Int threads = 2 - String memory = "2G" + String memory = "2GiB" Int timeMinutes = 30 String dockerImage = "quay.io/biocontainers/isoseq3:3.4.0--0" } diff --git a/lima.wdl b/lima.wdl index 6b87ad4..eece2b3 100644 --- a/lima.wdl +++ b/lima.wdl @@ -49,7 +49,7 @@ task Lima { String outputPrefix Int threads = 2 - String memory = "2G" + String memory = "2GiB" Int timeMinutes = 30 String dockerImage = "quay.io/biocontainers/lima:2.2.0--h9ee0642_0" } diff --git a/macs2.wdl b/macs2.wdl index 2afe3bb..e6a011a 100644 --- a/macs2.wdl +++ b/macs2.wdl @@ -31,7 +31,7 @@ task PeakCalling { String format = "AUTO" Boolean nomodel = false Int timeMinutes = 600 # Default to 10 hours - String memory = "8G" + String memory = "8GiB" String dockerImage = "quay.io/biocontainers/macs2:2.1.2--py27r351_0" } diff --git a/manta.wdl b/manta.wdl index 1c949af..6804f30 100644 --- a/manta.wdl +++ b/manta.wdl @@ -60,7 +60,7 @@ task Germline { runtime { cpu: cores - memory: "~{memoryGb}G" + memory: "~{memoryGb}GiB" docker: dockerImage time_minutes: timeMinutes } @@ -138,7 +138,7 @@ task Somatic { runtime { cpu: cores - memory: "~{memoryGb}G" + memory: "~{memoryGb}GiB" docker: dockerImage time_minutes: timeMinutes } diff --git a/minimap2.wdl b/minimap2.wdl index 50ff4db..96cc773 100644 --- a/minimap2.wdl +++ b/minimap2.wdl @@ -31,7 +31,7 @@ task Indexing { Int? splitIndex Int cores = 1 - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 10 String dockerImage = "quay.io/biocontainers/minimap2:2.20--h5bf99c6_0" } @@ -98,7 +98,7 @@ task Mapping { String? howToFindGTAG Int cores = 4 - String memory = "30G" + String memory = "30GiB" Int timeMinutes = 1 + ceil(size(queryFile, "G") * 200 / cores) String dockerImage = "quay.io/biocontainers/minimap2:2.20--h5bf99c6_0" } diff --git a/multiqc.wdl b/multiqc.wdl index a166293..21fc8a7 100644 --- a/multiqc.wdl +++ b/multiqc.wdl @@ -57,11 +57,11 @@ task MultiQC { String? clConfig String? memory - Int timeMinutes = 10 + ceil(size(reports, "G") * 8) + Int timeMinutes = 10 + ceil(size(reports, "GiB") * 8) String dockerImage = "quay.io/biocontainers/multiqc:1.9--py_1" } - Int memoryGb = 2 + ceil(size(reports, "G")) + Int memoryGb = 2 + ceil(size(reports, "GiB")) # This is where the reports end up. It does not need to be changed by the # user. It is full of symbolic links, so it is not of any use to the user @@ -139,7 +139,7 @@ task MultiQC { } runtime { - memory: select_first([memory, "~{memoryGb}G"]) + memory: select_first([memory, "~{memoryGb}GiB"]) time_minutes: timeMinutes docker: dockerImage } diff --git a/nanopack.wdl b/nanopack.wdl index e4c94a4..bd3f433 100644 --- a/nanopack.wdl +++ b/nanopack.wdl @@ -40,7 +40,7 @@ task NanoPlot { String? readType Int threads = 2 - String memory = "2G" + String memory = "2GiB" Int timeMinutes = 15 String dockerImage = "quay.io/biocontainers/nanoplot:1.38.0--pyhdfd78af_0" } @@ -130,7 +130,7 @@ task NanoQc { Int? minLength - String memory = "2G" + String memory = "2GiB" Int timeMinutes = 15 String dockerImage = "quay.io/biocontainers/nanoqc:0.9.4--py_0" } diff --git a/pacbio.wdl b/pacbio.wdl index b21c69b..dcf0f69 100644 --- a/pacbio.wdl +++ b/pacbio.wdl @@ -25,7 +25,7 @@ task mergePacBio { Array[File]+ reports String outputPathMergedReport - String memory = "4G" + String memory = "4GiB" String dockerImage = "quay.io/redmar_van_den_berg/pacbio-merge:0.2" } @@ -62,7 +62,7 @@ task ccsChunks { input { Int chunkCount - String memory = "4G" + String memory = "4GiB" String dockerImage = "python:3.7-slim" } diff --git a/pbbam.wdl b/pbbam.wdl index ae64b87..d5cafed 100644 --- a/pbbam.wdl +++ b/pbbam.wdl @@ -26,7 +26,7 @@ task Index { String? outputBamPath - String memory = "2G" + String memory = "2GiB" Int timeMinutes = 1 + ceil(size(bamFile, "G") * 4) String dockerImage = "quay.io/biocontainers/pbbam:1.6.0--h5b7e6e0_0" } diff --git a/pbmm2.wdl b/pbmm2.wdl index 5fda1c8..ea7c05d 100644 --- a/pbmm2.wdl +++ b/pbmm2.wdl @@ -29,7 +29,7 @@ task Mapping { File queryFile Int cores = 4 - String memory = "30G" + String memory = "30GiB" Int timeMinutes = 1 + ceil(size(queryFile, "G") * 2000 / cores) String dockerImage = "quay.io/biocontainers/pbmm2:1.3.0--h56fc30b_1" } diff --git a/peach.wdl b/peach.wdl index d1bc17f..7da029d 100644 --- a/peach.wdl +++ b/peach.wdl @@ -29,7 +29,7 @@ task Peach { String outputDir = "./peach" File panelJson - String memory = "2G" + String memory = "2GiB" String dockerImage = "quay.io/biowdl/peach:v1.5" Int timeMinutes = 5 } diff --git a/picard.wdl b/picard.wdl index 3d83582..f762ecd 100644 --- a/picard.wdl +++ b/picard.wdl @@ -27,7 +27,7 @@ task BedToIntervalList { String outputPath = "regions.interval_list" String javaXmx = "3G" - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 5 String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -88,7 +88,7 @@ task CollectHsMetrics { Int memoryMb = javaXmxMb + 512 # Additional * 2 because picard multiple metrics reads the # reference fasta twice. - Int timeMinutes = 1 + ceil(size(referenceFasta, "G") * 3 * 2) + ceil(size(inputBam, "G") * 6) + Int timeMinutes = 1 + ceil(size(referenceFasta, "GiB") * 3 * 2) + ceil(size(inputBam, "GiB") * 6) String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -109,7 +109,7 @@ task CollectHsMetrics { } runtime { - memory: "~{memoryMb}M" + memory: "~{memoryMb}MiB" time_minutes: timeMinutes docker: dockerImage } @@ -157,7 +157,7 @@ task CollectMultipleMetrics { Int javaXmxMb = 3072 Int memoryMb = javaXmxMb + 512 # Additional * 2 because picard multiple metrics reads the reference fasta twice. - Int timeMinutes = 1 + ceil(size(referenceFasta, "G") * 3 * 2) + ceil(size(inputBam, "G") * 6) + Int timeMinutes = 1 + ceil(size(referenceFasta, "GiB") * 3 * 2) + ceil(size(inputBam, "GiB") * 6) String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -223,7 +223,7 @@ task CollectMultipleMetrics { } runtime { - memory: "~{memoryMb}M" + memory: "~{memoryMb}MiB" time_minutes: timeMinutes docker: dockerImage } @@ -281,9 +281,9 @@ task CollectRnaSeqMetrics { String strandSpecificity = "NONE" String javaXmx = "8G" - String memory = "9G" + String memory = "9GiB" # With 6 minutes per G there were several timeouts. - Int timeMinutes = 1 + ceil(size(inputBam, "G") * 12) + Int timeMinutes = 1 + ceil(size(inputBam, "GiB") * 12) String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -340,8 +340,8 @@ task CollectTargetedPcrMetrics { String basename String javaXmx = "3G" - String memory = "4G" - Int timeMinutes = 1 + ceil(size(inputBam, "G") * 6) + String memory = "4GiB" + Int timeMinutes = 1 + ceil(size(inputBam, "GiB") * 6) String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -402,7 +402,7 @@ task CollectVariantCallingMetrics { String basename String javaXmx = "8G" - String memory = "9G" + String memory = "9GiB" Int timeMinutes = 1440 String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -459,9 +459,9 @@ task CollectWgsMetrics { Int? minimumBaseQuality Int? coverageCap - String memory = "5G" + String memory = "5GiB" String javaXmx = "4G" - Int timeMinutes = 1 + ceil(size(inputBam, "G") * 6) + Int timeMinutes = 1 + ceil(size(inputBam, "GiB") * 6) String dockerImage = "quay.io/biocontainers/picard:2.23.2--0" } @@ -516,7 +516,7 @@ task CreateSequenceDictionary { String outputDir String javaXmx = "2G" - String memory = "3G" + String memory = "3GiB" String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -568,7 +568,7 @@ task GatherBamFiles { Int javaXmxMb = 1024 Int memoryMb = javaXmxMb + 512 # One minute per input gigabyte. - Int timeMinutes = 1 + ceil(size(inputBams, "G") * 1) + Int timeMinutes = 1 + ceil(size(inputBams, "GiB") * 1) String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -593,7 +593,7 @@ task GatherBamFiles { } runtime { - memory: "~{memoryMb}M" + memory: "~{memoryMb}MiB" time_minutes: timeMinutes docker: dockerImage } @@ -630,8 +630,8 @@ task GatherVcfs { Boolean useJdkDeflater = true # Achieves much better compression rates than the intel deflater String javaXmx = "4G" - String memory = "5G" - Int timeMinutes = 1 + ceil(size(inputVcfs, "G") * 2) + String memory = "5GiB" + Int timeMinutes = 1 + ceil(size(inputVcfs, "GiB") * 2) String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -700,7 +700,7 @@ task MarkDuplicates { Int javaXmxMb = 6656 # 6.5G String memoryMb = javaXmxMb + 512 - Int timeMinutes = 1 + ceil(size(inputBams, "G") * 8) + Int timeMinutes = 1 + ceil(size(inputBams, "GiB") * 8) String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -736,7 +736,7 @@ task MarkDuplicates { } runtime { - memory: "~{memoryMb}M" + memory: "~{memoryMb}MiB" time_minutes: timeMinutes docker: dockerImage } @@ -782,8 +782,8 @@ task MergeVCFs { Boolean useJdkDeflater = true # Achieves much better compression rates than the intel deflater String javaXmx = "4G" - String memory = "5G" - Int timeMinutes = 1 + ceil(size(inputVCFs, "G")) * 2 + String memory = "5GiB" + Int timeMinutes = 1 + ceil(size(inputVCFs, "GiB")) * 2 String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -838,7 +838,7 @@ task SamToFastq { Boolean paired = true String javaXmx = "16G" # High memory default to avoid crashes. - String memory = "17G" + String memory = "17GiB" Int timeMinutes = 30 String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" @@ -900,7 +900,7 @@ task ScatterIntervalList { Int scatter_count String javaXmx = "3G" - String memory = "4G" + String memory = "4GiB" String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -943,7 +943,7 @@ task SortSam { # 4.000000001 which gets rounded to 5. # GATK Best practices uses 75000 here: https://github.com/gatk-workflows/broad-prod-wgs-germline-snps-indels/blob/d2934ed656ade44801f9cfe1c0e78d4f80684b7b/PairedEndSingleSampleWf-fc-hg38.wdl#L778 Int XmxGb = ceil(maxRecordsInRam / 125001.0) - Int timeMinutes = 1 + ceil(size(inputBam, "G") * 3) + Int timeMinutes = 1 + ceil(size(inputBam, "GiB") * 3) String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -971,7 +971,7 @@ task SortSam { runtime { cpu: 1 - memory: "~{1 + XmxGb}G" + memory: "~{1 + XmxGb}GiB" time_minutes: timeMinutes docker: dockerImage } @@ -1004,8 +1004,8 @@ task SortVcf { File? dict String javaXmx = "8G" - String memory = "9G" - Int timeMinutes = 1 + ceil(size(vcfFiles, "G") * 5) + String memory = "9GiB" + Int timeMinutes = 1 + ceil(size(vcfFiles, "GiB") * 5) String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -1054,8 +1054,8 @@ task RenameSample { String newSampleName String javaXmx = "8G" - String memory = "9G" - Int timeMinutes = 1 + ceil(size(inputVcf, "G") * 2) + String memory = "9GiB" + Int timeMinutes = 1 + ceil(size(inputVcf, "GiB") * 2) String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } @@ -1109,7 +1109,7 @@ task UmiAwareMarkDuplicatesWithMateCigar { Boolean useJdkInflater = false Boolean useJdkDeflater = true # Achieves much better compression rates than the intel deflater String javaXmx = "8G" - String memory = "9G" + String memory = "9GiB" Int timeMinutes = 360 String dockerImage = "quay.io/biocontainers/picard:2.26.10--hdfd78af_0" } diff --git a/prepareShiny.wdl b/prepareShiny.wdl index d669e2d..2891074 100644 --- a/prepareShiny.wdl +++ b/prepareShiny.wdl @@ -25,7 +25,7 @@ task CreateDesignMatrix { File countTable String shinyDir = "." - String memory = "5G" + String memory = "5GiB" Int timeMinutes = 30 String dockerImage = "quay.io/biocontainers/predex:0.9.2--pyh3252c3a_0" } @@ -67,7 +67,7 @@ task CreateAnnotation { File referenceGtfFile String shinyDir = "." - String memory = "5G" + String memory = "5GiB" Int timeMinutes = 30 String dockerImage = "quay.io/biocontainers/predex:0.9.2--pyh3252c3a_0" } diff --git a/rtg.wdl b/rtg.wdl index 0e86ce3..3e9dab9 100644 --- a/rtg.wdl +++ b/rtg.wdl @@ -27,8 +27,8 @@ task Format { String outputPath = "seq_data.sdf" String rtgMem = "8G" - String memory = "9G" - Int timeMinutes = 1 + ceil(size(inputFiles) * 2) + String memory = "9GiB" + Int timeMinutes = 1 + ceil(size(inputFiles, "GiB") * 2) String dockerImage = "quay.io/biocontainers/rtg-tools:3.10.1--0" } @@ -85,8 +85,8 @@ task VcfEval { String rtgMem = "8G" Int threads = 1 # Tool default is number of cores in the system 😱. - String memory = "9G" - Int timeMinutes = 1 + ceil(size([baseline, calls], "G") * 5) + String memory = "9GiB" + Int timeMinutes = 1 + ceil(size([baseline, calls], "GiB") * 5) String dockerImage = "quay.io/biocontainers/rtg-tools:3.10.1--0" } diff --git a/sambamba.wdl b/sambamba.wdl index 6696668..be347f9 100644 --- a/sambamba.wdl +++ b/sambamba.wdl @@ -27,7 +27,7 @@ task Flagstat { String outputPath = "./flagstat.txt" Int threads = 2 - String memory = "8G" + String memory = "8GiB" Int timeMinutes = 320 String dockerImage = "quay.io/biocontainers/sambamba:0.7.1--h148d290_2" } @@ -84,7 +84,7 @@ task Markdup { # Added 8192 mb as a margin of safety. Real life use with this setting uses 2.7 GiB. Int memoryMb = 8192 + sortBufferSize + 2 * ioBufferSize # Time minute calculation does not work well for higher number of threads. - Int timeMinutes = 1 + ceil(size(inputBams, "G") * 25) / threads + Int timeMinutes = 1 + ceil(size(inputBams, "GiB") * 25) / threads String dockerImage = "quay.io/biocontainers/sambamba:0.7.1--h148d290_2" } @@ -113,7 +113,7 @@ task Markdup { runtime { cpu: threads - memory: "~{memoryMb}M" + memory: "~{memoryMb}MiB" time_minutes: timeMinutes docker: dockerImage } @@ -149,7 +149,7 @@ task Sort { Int memoryPerThreadGb = 4 Int threads = 1 Int memoryGb = 1 + threads * memoryPerThreadGb - Int timeMinutes = 1 + ceil(size(inputBam, "G") * 3) + Int timeMinutes = 1 + ceil(size(inputBam, "GiB") * 3) String dockerImage = "quay.io/biocontainers/sambamba:0.7.1--h148d290_2" } @@ -177,7 +177,7 @@ task Sort { runtime { cpu: threads - memory: "~{memoryGb}G" + memory: "~{memoryGb}GiB" docker: dockerImage time_minutes: timeMinutes } diff --git a/samtools.wdl b/samtools.wdl index 81b6c17..e1b0817 100644 --- a/samtools.wdl +++ b/samtools.wdl @@ -26,8 +26,8 @@ task BgzipAndIndex { String outputDir String type = "vcf" - String memory = "2G" - Int timeMinutes = 1 + ceil(size(inputFile, "G")) + String memory = "2GiB" + Int timeMinutes = 1 + ceil(size(inputFile, "GiB")) String dockerImage = "quay.io/biocontainers/tabix:0.2.6--ha92aebf_0" } @@ -71,7 +71,7 @@ task Faidx { File inputFile String outputDir - String memory = "2G" + String memory = "2GiB" String dockerImage = "quay.io/biocontainers/samtools:1.11--h6270b1f_0" } @@ -119,7 +119,7 @@ task Fastq { Int? compressionLevel Int threads = 1 - String memory = "1G" + String memory = "1GiB" Int timeMinutes = 1 + ceil(size(inputBam) * 2) String dockerImage = "quay.io/biocontainers/samtools:1.11--h6270b1f_0" } @@ -183,8 +183,8 @@ task FilterShortReadsBam { File bamFile String outputPathBam - String memory = "1G" - Int timeMinutes = 1 + ceil(size(bamFile, "G") * 8) + String memory = "1GiB" + Int timeMinutes = 1 + ceil(size(bamFile, "GiB") * 8) String dockerImage = "quay.io/biocontainers/samtools:1.11--h6270b1f_0" } @@ -229,7 +229,7 @@ task Flagstat { File inputBam String outputPath - String memory = "256M" # Only 40.5 MiB used for 150G bam file. + String memory = "256MiB" # Only 40.5 MiB used for 150G bam file. Int timeMinutes = 1 + ceil(size(inputBam, "G")) String dockerImage = "quay.io/biocontainers/samtools:1.11--h6270b1f_0" } @@ -269,8 +269,8 @@ task Index { String? outputBamPath - String memory = "2G" - Int timeMinutes = 1 + ceil(size(bamFile, "G") * 4) + String memory = "2GiB" + Int timeMinutes = 1 + ceil(size(bamFile, "GiB") * 4) String dockerImage = "quay.io/biocontainers/samtools:1.11--h6270b1f_0" } @@ -321,7 +321,7 @@ task Markdup { File inputBam String outputBamPath - Int timeMinutes = 1 + ceil(size(inputBam, "G") * 2) + Int timeMinutes = 1 + ceil(size(inputBam, "GiB") * 2) String dockerImage = "quay.io/biocontainers/samtools:1.11--h6270b1f_0" } @@ -359,8 +359,8 @@ task Merge { Boolean force = true Int threads = 1 - String memory = "4G" - Int timeMinutes = 1 + ceil(size(bamFiles, "G") * 2) + String memory = "4GiB" + Int timeMinutes = 1 + ceil(size(bamFiles, "GiB") * 2) String dockerImage = "quay.io/biocontainers/samtools:1.11--h6270b1f_0" } @@ -415,7 +415,7 @@ task Sort { Int memoryPerThreadGb = 4 Int threads = 1 Int memoryGb = 1 + threads * memoryPerThreadGb - Int timeMinutes = 1 + ceil(size(inputBam, "G") * 3) + Int timeMinutes = 1 + ceil(size(inputBam, "GiB") * 3) String dockerImage = "quay.io/biocontainers/samtools:1.11--h6270b1f_0" } @@ -444,7 +444,7 @@ task Sort { runtime { cpu: threads - memory: "~{memoryGb}G" + memory: "~{memoryGb}GiB" time_minutes: timeMinutes docker: dockerImage } @@ -473,7 +473,7 @@ task Tabix { String outputFilePath = "indexed.vcf.gz" String type = "vcf" - Int timeMinutes = 1 + ceil(size(inputFile, "G") * 2) + Int timeMinutes = 1 + ceil(size(inputFile, "GiB") * 2) String dockerImage = "quay.io/biocontainers/tabix:0.2.6--ha92aebf_0" } @@ -526,8 +526,8 @@ task View { Int? MAPQthreshold Int threads = 1 - String memory = "1G" - Int timeMinutes = 1 + ceil(size(inFile, "G") * 5) + String memory = "1GiB" + Int timeMinutes = 1 + ceil(size(inFile, "GiB") * 5) String dockerImage = "quay.io/biocontainers/samtools:1.11--h6270b1f_0" } diff --git a/scripts b/scripts index 84690a3..98cc3e1 160000 --- a/scripts +++ b/scripts @@ -1 +1 @@ -Subproject commit 84690a30eb0dde2bfdfaff9abf097b6f4c49dfd8 +Subproject commit 98cc3e10125c853a70f41ceccf8f9d5428d4c1a3 diff --git a/smoove.wdl b/smoove.wdl index d1011f6..7a1ac38 100644 --- a/smoove.wdl +++ b/smoove.wdl @@ -29,7 +29,7 @@ task Call { String sample String outputDir = "./smoove" - String memory = "15G" + String memory = "15GiB" Int timeMinutes = 1440 String dockerImage = "quay.io/biocontainers/smoove:0.2.5--0" } diff --git a/snpeff.wdl b/snpeff.wdl index 4a3640c..0f14e5b 100644 --- a/snpeff.wdl +++ b/snpeff.wdl @@ -36,7 +36,7 @@ task SnpEff { Boolean noShiftHgvs = false Int? upDownStreamLen - String memory = "9G" + String memory = "9GiB" String javaXmx = "8G" Int timeMinutes = 60 String dockerImage = "quay.io/biocontainers/snpeff:5.0--0" diff --git a/somaticseq.wdl b/somaticseq.wdl index 63f8362..7656d08 100644 --- a/somaticseq.wdl +++ b/somaticseq.wdl @@ -47,7 +47,7 @@ task ParallelPaired { File? strelkaSNV File? strelkaIndel - String memory = "2G" + String memory = "2GiB" Int threads = 1 Int timeMinutes = 60 String dockerImage = "lethalfang/somaticseq:3.1.0" @@ -162,7 +162,7 @@ task ParallelPairedTrain { File? strelkaSNV File? strelkaIndel - String memory = "2G" + String memory = "2GiB" Int threads = 1 Int timeMinutes = 240 String dockerImage = "lethalfang/somaticseq:3.1.0" @@ -270,7 +270,7 @@ task ParallelSingle { File? scalpelVCF File? strelkaVCF - String memory = "2G" + String memory = "2GiB" Int threads = 1 Int timeMinutes = 60 String dockerImage = "lethalfang/somaticseq:3.1.0" @@ -362,7 +362,7 @@ task ParallelSingleTrain { File? scalpelVCF File? strelkaVCF - String memory = "2G" + String memory = "2GiB" Int threads = 1 Int timeMinutes = 240 String dockerImage = "lethalfang/somaticseq:3.1.0" @@ -441,7 +441,7 @@ task ModifyStrelka { File strelkaVCF String outputVCFName = basename(strelkaVCF, ".gz") - String memory = "2G" + String memory = "2GiB" Int timeMinutes = 20 String dockerImage = "lethalfang/somaticseq:3.1.0" } diff --git a/spades.wdl b/spades.wdl index 3975dd3..d717ab2 100644 --- a/spades.wdl +++ b/spades.wdl @@ -100,6 +100,6 @@ task Spades { runtime { cpu: threads - memory: "~{memoryGb}G" + memory: "~{memoryGb}GiB" } } diff --git a/star.wdl b/star.wdl index 6a123c8..88d3c83 100644 --- a/star.wdl +++ b/star.wdl @@ -29,8 +29,8 @@ task GenomeGenerate { Int? sjdbOverhang Int threads = 4 - String memory = "32G" - Int timeMinutes = ceil(size(referenceFasta, "G") * 240 / threads) + String memory = "32GiB" + Int timeMinutes = ceil(size(referenceFasta, "GiB") * 240 / threads) String dockerImage = "quay.io/biocontainers/star:2.7.3a--0" } @@ -130,12 +130,12 @@ task Star { Int runThreadN = 4 String? memory # 1 minute initialization + time reading in index (1 minute per G) + time aligning data. - Int timeMinutes = 1 + ceil(size(indexFiles, "G")) + ceil(size(flatten([inputR1, inputR2]), "G") * 300 / runThreadN) + Int timeMinutes = 1 + ceil(size(indexFiles, "GiB")) + ceil(size(flatten([inputR1, inputR2]), "GiB") * 300 / runThreadN) String dockerImage = "quay.io/biocontainers/star:2.7.3a--0" } # Use a margin of 30% index size. Real memory usage is ~30 GiB for a 27 GiB index. - Int memoryGb = 1 + ceil(size(indexFiles, "G") * 1.3) + Int memoryGb = 1 + ceil(size(indexFiles, "GiB") * 1.3) # For some reason doing above calculation inside a string does not work. # So we solve it with an optional memory string and using select_first # in the runtime section. @@ -172,7 +172,7 @@ task Star { runtime { cpu: runThreadN - memory: select_first([memory, "~{memoryGb}G"]) + memory: select_first([memory, "~{memoryGb}GiB"]) time_minutes: timeMinutes docker: dockerImage } diff --git a/strelka.wdl b/strelka.wdl index be08e38..39afe17 100644 --- a/strelka.wdl +++ b/strelka.wdl @@ -63,7 +63,7 @@ task Germline { runtime { cpu: cores - memory: "~{memoryGb}G" + memory: "~{memoryGb}GiB" time_minutes: timeMinutes docker: dockerImage } @@ -139,7 +139,7 @@ task Somatic { runtime { cpu: cores - memory: "~{memoryGb}G" + memory: "~{memoryGb}GiB" time_minutes: timeMinutes docker: dockerImage } diff --git a/stringtie.wdl b/stringtie.wdl index 9c2f3cf..fbe7e44 100644 --- a/stringtie.wdl +++ b/stringtie.wdl @@ -34,7 +34,7 @@ task Stringtie { Float? minimumCoverage Int threads = 1 - String memory = "2G" + String memory = "2GiB" Int timeMinutes = 1 + ceil(size(bam, "G") * 60 / threads) String dockerImage = "quay.io/biocontainers/stringtie:1.3.6--h92e31bf_0" } @@ -102,7 +102,7 @@ task Merge { Float? minimumIsoformFraction String? label - String memory = "10G" + String memory = "10GiB" Int timeMinutes = 1 + ceil(size(gtfFiles, "G") * 20) String dockerImage = "quay.io/biocontainers/stringtie:2.1.4--h7e0af3c_0" } diff --git a/survivor.wdl b/survivor.wdl index de23240..b233fb5 100644 --- a/survivor.wdl +++ b/survivor.wdl @@ -31,7 +31,7 @@ task Merge { Int minSize = 30 String outputPath = "./survivor/merged.vcf" - String memory = "24G" + String memory = "24GiB" Int timeMinutes = 60 String dockerImage = "quay.io/biocontainers/survivor:1.0.6--h6bb024c_0" } diff --git a/talon.wdl b/talon.wdl index 61f5eb4..2f93e36 100644 --- a/talon.wdl +++ b/talon.wdl @@ -30,7 +30,7 @@ task CreateAbundanceFileFromDatabase { File? whitelistFile File? datasetsFile - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 30 String dockerImage = "biocontainers/talon:v5.0_cv1" } @@ -86,7 +86,7 @@ task CreateGtfFromDatabase { File? whitelistFile File? datasetFile - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 30 String dockerImage = "biocontainers/talon:v5.0_cv1" } @@ -144,7 +144,7 @@ task FilterTalonTranscripts { File? datasetsFile Int? minDatasets - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 30 String dockerImage = "biocontainers/talon:v5.0_cv1" } @@ -200,7 +200,7 @@ task GetReadAnnotations { File? datasetFile - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 30 String dockerImage = "biocontainers/talon:v5.0_cv1" } @@ -248,7 +248,7 @@ task GetSpliceJunctions { String runMode = "intron" String outputPrefix - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 30 String dockerImage = "biocontainers/talon:v5.0_cv1" } @@ -302,7 +302,7 @@ task InitializeTalonDatabase { Int cutOff3p = 300 String outputPrefix - String memory = "10G" + String memory = "10GiB" Int timeMinutes = 60 String dockerImage = "biocontainers/talon:v5.0_cv1" } @@ -360,7 +360,7 @@ task LabelReads { String outputPrefix Int threads = 4 - String memory = "25G" + String memory = "25GiB" Int timeMinutes = 2880 String dockerImage = "biocontainers/talon:v5.0_cv1" } @@ -413,7 +413,7 @@ task ReformatGtf { input { File gtfFile - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 30 String dockerImage = "biocontainers/talon:v5.0_cv1" } @@ -454,7 +454,7 @@ task SummarizeDatasets { File? datasetGroupsCsv - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 50 String dockerImage = "biocontainers/talon:v5.0_cv1" } @@ -506,7 +506,7 @@ task Talon { String outputPrefix Int threads = 4 - String memory = "25G" + String memory = "25GiB" Int timeMinutes = 2880 String dockerImage = "biocontainers/talon:v5.0_cv1" } diff --git a/transcriptclean.wdl b/transcriptclean.wdl index efdd95f..8607a7a 100644 --- a/transcriptclean.wdl +++ b/transcriptclean.wdl @@ -27,7 +27,7 @@ task GetSJsFromGtf { String outputPrefix Int minIntronSize = 21 - String memory = "8G" + String memory = "8GiB" Int timeMinutes = 30 String dockerImage = "biocontainers/transcriptclean:v2.0.2_cv1" } @@ -72,7 +72,7 @@ task GetTranscriptCleanStats { File inputSam String outputPrefix - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 30 String dockerImage = "biocontainers/transcriptclean:v2.0.2_cv1" } @@ -128,7 +128,7 @@ task TranscriptClean { File? variantFile Int cores = 1 - String memory = "25G" + String memory = "25GiB" Int timeMinutes = 2880 String dockerImage = "biocontainers/transcriptclean:v2.0.2_cv1" } diff --git a/umi-tools.wdl b/umi-tools.wdl index b79817c..d8d17c4 100644 --- a/umi-tools.wdl +++ b/umi-tools.wdl @@ -30,7 +30,7 @@ task Extract { String? read2Output = "umi_extracted_R2.fastq.gz" Boolean threePrime = false - String memory = "20G" + String memory = "20GiB" Int timeMinutes = 1 + ceil(size([read1, read2], "G") * 2) String dockerImage = "quay.io/biocontainers/mulled-v2-509311a44630c01d9cb7d2ac5727725f51ea43af:3067b520386698317fd507c413baf7f901666fd4-0" } @@ -87,8 +87,8 @@ task Dedup { String? umiSeparator String? statsPrefix - String memory = "25G" - Int timeMinutes = 30 + ceil(size(inputBam, "G") * 30) + String memory = "25GiB" + Int timeMinutes = 30 + ceil(size(inputBam, "GiB") * 30) String dockerImage = "quay.io/biocontainers/mulled-v2-509311a44630c01d9cb7d2ac5727725f51ea43af:3067b520386698317fd507c413baf7f901666fd4-0" } diff --git a/umi.wdl b/umi.wdl index 0dc5c55..e7f01fc 100644 --- a/umi.wdl +++ b/umi.wdl @@ -30,8 +30,8 @@ task BamReadNameToUmiTag { String outputPath = "output.bam" String umiTag = "RX" - String memory = "2G" - Int timeMinutes = 1 + ceil(size([inputBam], "G") * 10) + String memory = "2GiB" + Int timeMinutes = 1 + ceil(size([inputBam], "GiB") * 10) String dockerImage = "quay.io/biocontainers/pysam:0.17.0--py39h051187c_0" } diff --git a/unicycler.wdl b/unicycler.wdl index 938d0c7..d83db3c 100644 --- a/unicycler.wdl +++ b/unicycler.wdl @@ -66,7 +66,7 @@ task Unicycler { String? lowScore Int threads = 1 - String memory = "4G" + String memory = "4GiB" } command { diff --git a/vardict.wdl b/vardict.wdl index 1c20e51..187b456 100644 --- a/vardict.wdl +++ b/vardict.wdl @@ -48,7 +48,7 @@ task VarDict { String javaXmx = "16G" Int threads = 1 - String memory = "18G" + String memory = "18GiB" Int timeMinutes = 300 String dockerImage = "quay.io/biocontainers/vardict-java:1.5.8--1" } diff --git a/vt.wdl b/vt.wdl index 85077da..4da2d8c 100644 --- a/vt.wdl +++ b/vt.wdl @@ -29,7 +29,7 @@ task Normalize { Boolean ignoreMaskedRef = false String outputPath = "./vt/normalized_decomposed.vcf" - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 30 String dockerImage = "quay.io/biocontainers/vt:0.57721--hdf88d34_2" } diff --git a/whatshap.wdl b/whatshap.wdl index 7307ce7..da86ad8 100644 --- a/whatshap.wdl +++ b/whatshap.wdl @@ -38,7 +38,7 @@ task Phase { String? threshold String? ped - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 120 # Whatshap 1.0, tabix 0.2.5. String dockerImage = "quay.io/biocontainers/mulled-v2-5c61fe1d8c284dd05d26238ce877aa323205bf82:89b4005d04552bdd268e8af323df83357e968d83-0" @@ -109,7 +109,7 @@ task Stats { String? blockList String? chromosome - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 120 # Whatshap 1.0, tabix 0.2.5. String dockerImage = "quay.io/biocontainers/mulled-v2-5c61fe1d8c284dd05d26238ce877aa323205bf82:89b4005d04552bdd268e8af323df83357e968d83-0" @@ -169,7 +169,7 @@ task Haplotag { String? regions String? sample - String memory = "4G" + String memory = "4GiB" Int timeMinutes = 120 # Whatshap 1.0, tabix 0.2.5. String dockerImage = "quay.io/biocontainers/mulled-v2-5c61fe1d8c284dd05d26238ce877aa323205bf82:89b4005d04552bdd268e8af323df83357e968d83-0" diff --git a/wisestork.wdl b/wisestork.wdl index 8fb4b76..bef54e2 100644 --- a/wisestork.wdl +++ b/wisestork.wdl @@ -31,7 +31,7 @@ task Count { Int? binSize File? binFile - String memory = "2G" + String memory = "2GiB" String dockerImage = "quay.io/biocontainers/wisestork:0.1.2--pyh24bf2e0_0" } @@ -69,7 +69,7 @@ task GcCorrect { Int? iter Float? fracLowess - String memory = "2G" + String memory = "2GiB" String dockerImage = "quay.io/biocontainers/wisestork:0.1.2--pyh24bf2e0_0" } @@ -129,7 +129,7 @@ task Newref { } runtime { - memory: "~{memory}G" + memory: "~{memory}GiB" docker: dockerImage } } @@ -147,7 +147,7 @@ task Zscore { Int? binSize File? binFile - String memory = "2G" + String memory = "2GiB" String dockerImage = "quay.io/biocontainers/wisestork:0.1.2--pyh24bf2e0_0" } -- GitLab