It's finally summer here in New England -- time for cave-dwelling developers to hit the beach and do the lobster dance (those of us who don't tan well anyway). We leave you with a new version of the GATK that includes a new(ish) plotting tool, some more performance improvements to the callers, a lot of feature tweaks and quite a few bug fixes. Be sure to check out the full list in the 2.6 Release Notes.

Highlights are below as usual, enjoy. There's one thing that we need to point out with particular emphasis: we have moved to Java 7, so you may need to update your system's Java version. Full explanation at the end of this document because it's a little long, but be sure to read it.

New(ish) plotting tool for Base Recalibration results

GATK old-timers may remember a tool called AnalyzeCovariates, which was part of the BQSR process in 1.x versions, many moons ago. Well, we've resurrected it to take over the plotting functionality of the BaseRecalibrator, to make it easier and faster to plot and compare the results of base recalibration. This also prevents issues with plot generation in scatter-gather mode. We'll update our docs on the BQSR workflow in the next few days, but in the meantime you can find full details of how to use this tool here.

HaplotypeCaller now so sensitive, it cries at the movies

We know you don't want to miss a single true variant, so for this release, we've put a lot of effort into making the HaplotypeCaller more sensitive. And it's paying off: in our tests, the HaplotypeCaller is now more sensitive than the UnifiedGenotyper for calling both SNPs and indels when run over whole genome datasets.

[graph to illustrate, coming soon]

UnifiedGenotyper: not out of the race yet

You might think all our focus is on improving the HaplotypeCaller these days; you would be wrong. The UnifiedGenotyper is still essential for calling large numbers of samples together, for dealing with exotic ploidies, and for calling pooled samples. So we've given it a turbo boost that makes it go twice as fast for calling indels on multiple samples.

The key change here is the updated Hidden Markov Model used by the UG. You can see on the graph that as the number of exomes being called jointly increases, the new HMM keeps runtimes down significantly compared to the old HMM.

Version tracking in the VCF header

Don’t you hate it when you go back to a VCF you generated some months ago, and you have no idea which version of GATK you used at the time? (And yes, versions matter. Sometimes a lot.) We sure do, so we added a function to add the GATK version number in the header of the VCFs generated by GATK.

Migration to Java 7

Speaking of software versions... As you probably know, the GATK runs on Java -- specifically, until now, version 6 of the Runtime Environment (which translates to version 1.6 if you ask java -version at the command prompt). But the Java language has been evolving under our feet; version 7 has been out and stable for some time now, and version 8 is on the horizon. We were happy as clams with Java 6… but now, newer computers with recent OS versions ship with Java 7, and on MacOS X once you update the system it is difficult to go back to using Java 6. And since Java 7 is not fully backwards compatible, people have been running into version problems.

So, we have made the difficult but necessary decision to follow the tide, and migrate the GATK to Java 7. Starting with this release, GATK will now require Java 7 to run. If you try to run with Java 6, you will probably get an error like this:

Exception in thread "main" java.lang.UnsupportedClassVersionError: org/broadinstitute/sting/gatk/CommandLineGATK : Unsupported major.minor version 51.0

If you're not sure what version of Java you are currently using, you can find out very easily by typing the following command:

java -version

which should return something like this:

java version "1.7.0_17"
Java(TM) SE Runtime Environment (build 1.7.0_17-b02)
Java HotSpot(TM) 64-Bit Server VM (build 23.7-b01, mixed mode)

If not, you'll need to update your java version. If you have any difficulty doing this, please don’t ask us in the forum -- you’ll get much better, faster help if you ask your local IT department.

Return to top


Hi, It seems that the new release has bug: if I run the following, I got error java -Xmx2g -jar /opt/nasapps/development/gatk/2.6-4/bin/GenomeAnalysisTK.jar -T RealignerTargetCreator -h Exception in thread "main" java.lang.UnsupportedClassVersionError: org/broadinstitute/sting/gatk/CommandLineGATK : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass( at at at$000( at$ at Method) at at java.lang.ClassLoader.loadClass( at sun.misc.Launcher$AppClassLoader.loadClass( at java.lang.ClassLoader.loadClass( Could not find the main class: org.broadinstitute.sting.gatk.CommandLineGATK. Program will exit. But if I run: java -Xmx2g -cp /opt/nasapps/development/gatk/2.6-4/bin/GenomeAnalysisTK.jar -help, which seem fine. then I run the following: java -Xmx2g -cp /opt/nasapps/development/gatk/2.6-4/bin/GenomeAnalysisTK.jar -T RealignerTargetCreator -h Unrecognized option: -T Could not create the Java virtual machine. Either way, I can not use the new build 2.6-4. Could you check on that Thanks Mike

Mon 24 Jun 2013


just additional info, if I used an old version, I can perfectly run the following without error: java -Xmx2g -jar /opt/nasapps/development/gatk/2.5-2/bin/GenomeAnalysisTK.jar -T RealignerTargetCreator -h Thx, Mike

Mon 24 Jun 2013


@mike, that's the error you get when you have an older java version. Please see the text of the announcement relating to the Java version upgrade.

Mon 24 Jun 2013


Hi, Geraldine: Thanks a lot for pointing that out. Yes, with Java 7, it works! Thanks again and best Mike

Mon 24 Jun 2013


I am in a quandry. I use Mac OS X 10.6.8, with Java 1.6.0_51. Unfortunately, I cannot upgrade to Java 7, since there is some compatibility issue. Also unfortunately, I cannot run GATK 2.6 because it won't run with Java 1.6. Is there a legacy version that I can access to run in my mac? Even GATK 1.6 should do. Or an archived copy of GATK-lite? Thanks.

Mon 24 Jun 2013


You can get the 2.5 version from our [github repository](, but you'll have to build from source. Are you sure you can't upgrade your MacOS and Java? As time goes on you will not be able to use any of the new improvements, and we won't be able to provide support for running an old version.

Mon 24 Jun 2013


So, is there anywhere the false negative rate and false positive rates for the HaplotypeCaller are listed? I don't need a graph, but some ballpark number would be appreciated.

Mon 24 Jun 2013


I don't have the numbers on hand but I'll try to dig them up on Monday. You'll be happy to hear that starting with the next release (2.7) we will systematically issue the numbers for every new version.

Mon 24 Jun 2013

At a glance

Follow us on Twitter

GATK Dev Team


RT @broadinstitute: .@NIH funds available for investigators in need of cloud computing & storage resources. Apply:
26 Apr 17
@DataKimist Enjoy! And let us know if we can help.
19 Apr 17
@mjpchaisson Not meant that way - just depending on what you're doing you may want to cite earlier framework or lat…
18 Apr 17
@cabioinformatic For more recent versions see
15 Apr 17
@thatdnaguy @notigor @David_McGaughey @brent_p Indel Realign is redundant with assembly-based realign done by HC, w…
13 Apr 17

Our favorite tweets from others

best error output: Please do NOT post this error to the GATK forum unless you have really tried to fix it yourself.
4 Apr 17
From the @gatk_dev page describing .vcf files: "Don't write home-brewed VCF parsing scripts. It never ends well”
28 Feb 17
Our 3-day course on GATK finished - 38 participants very happy! Big thanks to @gatk_dev team for excellent lessons.
24 Feb 17
@froggleston @dgmacarthur Sounds like ExAC is reaching Uber stage. ‘Uber but for pizza’. ‘ExAC but for wheat’.
14 Jan 17
#ESRenpeinture grad school - postdoc - after postdoc
6 Jan 17
See more of our favorite tweets...
Search blog by tag

appistry ashg ashg16 benchmarks best-practices bug bug-fixed cloud cluster cnv collaboration community compute conference conferences cram cromwell depthofcoverage diagnosetargets error forum gatk3 gatk4 genotype-refinement genotypegvcfs google grch38 gvcf haploid haplotypecaller help hg38 holiday hts htsjdk ibm intel java8 job job-offer jobs license meetings mutect mutect2 ngs outreach pairhmm parallelism patch pdf performance picard pipeline plans ploidy polyploid poster presentations printreads profile promote release release-notes rnaseq runtime saas script sequencing service slides snow speed status support talks team terminology topstory troll tutorial unifiedgenotyper vcf-gz version-highlights wdl workflow workshop xhmm