Thanks alot, Andrew.
Dear all,
I would like to know what the difference is between the "-Xmx4G" and "-Xmx8G" switches on GATK. All I know is, both of these switches are used for specifying memory allocation (which I'm still not quite sure I understand the meaning of it) from https://software.broadinstitute.org/gatk/documentation/article?id=11050.
I want to use the HaplotypeCaller tool on my bam files, and I'd like to know the difference between switches before I proceed.
Many thanks
Reem.
1 answer
These aren't GATK specific switches, but a java JVM (java virtual machine) parameter. Since GATK4, these parameters have been absorbed into the main binary to integrate well with the WDL notation and Cromwell orchestration.
-Xmx is the switch to tell Java how much memory it's allowed to work with (heap size). This is akin to the amount of RAM on your machine. -Xmx8G means that you're telling Java it can work with 8GB of memory (or RAM) on your machine. It's important not to allocate more than your machine has available.
Log in to answer this question.