modules icon indicating copy to clipboard operation
modules copied to clipboard

Bowtie2 + Samtools pipeline in nf-core module may use double the intended threads

Open fbnrst opened this issue 1 month ago • 0 comments

Have you checked the docs?

Description of the bug

In the nf-core Bowtie2 alignment module, the pipeline runs something like:

bowtie2 ... --threads $task.cpus ... | samtools ... --threads $task.cpus ...

see https://github.com/nf-core/modules/blob/fa1477128e0ff24675c8f56d6c334fcc323025c4/modules/nf-core/bowtie2/align/main.nf#L57-L64

Because Bowtie2 and Samtools are piped, both programs seem to independently use $task.cpus threads.

I observed this when I was running nf-core/atacseq, and the bowtie_align step was using more cores than it is supposed to use. When inspecting processes with htop, I saw a bowtie2 process and a samtools process, both using 12 threads, and I had only given 12 threads to this process. I scheduled the process with slurm on our cluster.

Should this be solved by making sure that bowtie2 and samtools both ask for less threads than $task.cpus?

Command used and terminal output


Relevant files

No response

System information

nextflow 25.10.0 run on our HPC with slurm executor container engine: singularity CentOS Linux release 7.4 running the dev branch of nf-core/atacseq, which uses the bowtie2_align module

fbnrst avatar Nov 13 '25 17:11 fbnrst