Accelerating next generation sequencing data analysis with system level optimizations

Nagarajan Kathiresan*, Ramzi Temanni, Hakeem Almabrazi, Najeeb Syed, Puthen V. Jithesh, Rashid Al-Ali

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

11 Citations (Scopus)

Abstract

Next generation sequencing (NGS) data analysis is highly compute intensive. In-memory computing, vectorization, bulk data transfer, CPU frequency scaling are some of the hardware features in the modern computing architectures. To get the best execution time and utilize these hardware features, it is necessary to tune the system level parameters before running the application. We studied the GATK-HaplotypeCaller which is part of common NGS workflows, that consume more than 43% of the total execution time. Multiple GATK 3.x versions were benchmarked and the execution time of HaplotypeCaller was optimized by various system level parameters which included: (i) tuning the parallel garbage collection and kernel shared memory to simulate in-memory computing, (ii) architecture-specific tuning in the PairHMM library for vectorization, (iii) including Java 1.8 features through GATK source code compilation and building a runtime environment for parallel sorting and bulk data transfer (iv) the default 'on-demand' mode of CPU frequency is over-clocked by using 'performance-mode' to accelerate the Java multi-threads. As a result, the HaplotypeCaller execution time was reduced by 82.66% in GATK 3.3 and 42.61% in GATK 3.7. Overall, the execution time of NGS pipeline was reduced to 70.60% and 34.14% for GATK 3.3 and GATK 3.7 respectively.

Original languageEnglish
Article number9058
JournalScientific Reports
Volume7
Issue number1
DOIs
Publication statusPublished - 1 Dec 2017
Externally publishedYes

Fingerprint

Dive into the research topics of 'Accelerating next generation sequencing data analysis with system level optimizations'. Together they form a unique fingerprint.

Cite this