Biostar Beta. Not for public use.
GATK: -nct and -nt
1
Entering edit mode
2.2 years ago
fire_water • 80
United States

I am trying to understand GATK's parameters for parallelism:

-nt / --num_threads controls the number of data threads sent to the processor

-nct / --num_cpu_threads_per_data_thread controls the number of CPU threads allocated to each data thread

So, is the following example true?

-nt 8 means you use 8 cores

-nct 8 means you use 8 threads within a single core

Thanks!

gatk parallel • 1.3k views
ADD COMMENTlink
0
Entering edit mode

Looks like this was cross-posted here: https://gatkforums.broadinstitute.org/gatk/discussion/9283/understanding-nct-and-nt

Where it was specified:

-nt / --num_threads controls the number of data threads sent to the processor

-nct / --num_cpu_threads_per_data_thread controls the number of CPU threads allocated to each data thread

ADD REPLYlink
1
Entering edit mode
17 months ago

Hmm that is not my understanding, but I could be reading the help docs wrong. I think -nct will still use the same number of CPU cores as if you were specifying -nt. So in your example, both would use 8 cores; it's just that those 8 cores would be controlled by a single "mother" thread. System memory (just think of this as RAM) is allocated per mother thread and is distributed differently than multi-threading/parallel usage of CPUs. So in your example, -nt 8 and -nct 8 both would allow GATK to use a maximum of 8 cores, but using the latter option means the operations are being handled by one mother thread which would be allocated an amount of memory equivalent to each thread if using the prior option.

I based my explanation based on this page, though I might have made it more confusing instead of more clear: https://gatkforums.broadinstitute.org/gatk/discussion/1975/how-can-i-use-parallelism-to-make-gatk-tools-run-faster

ADD COMMENTlink

Login before adding your answer.

Similar Posts
Loading Similar Posts
Powered by the version 2.1