GATK: -nct and -nt
1
1
Entering edit mode
7.1 years ago
fire_water ▴ 80

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 • 5.2k views
ADD COMMENT
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 REPLY
1
Entering edit mode
5.4 years 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 COMMENT

Login before adding your answer.

Traffic: 2698 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6