NECSTFridayTalk – A Methodology for Accelerating Variant Calling on GPU

NECSTFridayTalk
Beatrice Branchini
Graduate Student in Biomedical Engineering
Politecnico di Milano
DEIB - NECSTLab Meeting Room (Building 20)
On Line via Facebook
October 21st, 2022
12.30 pm
Contacts:
Marco Santambrogio
Research Line:
System architectures
Beatrice Branchini
Graduate Student in Biomedical Engineering
Politecnico di Milano
DEIB - NECSTLab Meeting Room (Building 20)
On Line via Facebook
October 21st, 2022
12.30 pm
Contacts:
Marco Santambrogio
Research Line:
System architectures
Sommario
On October 21st, 2022 at 12.30 pm "A Methodology for Accelerating Variant Calling on GPU", a new appointment of NECSTFridayTalk, will be held by Beatrice Branchini, Graduate Student in Biomedical Engineering at Politecnico di Milano in DEIB NECSTLab Meeting Room.
Personalized medicine represents a cutting-edge approach to healthcare delivery. In this scenario, genome analysis is crucial to highlight genetic variants and provide customized treatments to each patient. HaplotypeCaller is one of the most relevant tools for variant calling, based on the Pair Hidden Markov Model (PairHMM) algorithm. However, this tool’s analyses require long execution times mainly due to a significant bottleneck represented by the PairHMM algorithm. Moreover, given the algorithm’s compute-intensiveness, general-purpose computing architectures exacerbate this limitation. Thus, offloading it to hardware accelerators is a suitable solution to speed the execution up, as proven in the literature. However, the performance achieved by State-of-the-Art works comes with many constraints on the application’s flexibility, jeopardizing the solutions’ usability. This work proposes a methodology to overcome the performance and flexibility issues and accelerate the PairHMM algorithm on Graphics Processing Unit (GPU). It provides methods to expose parallelism in the algorithm, which is crucial to achieving high performance. Furthermore, it describes two strategies to enable different layers of flexibility: the dynamic memory swap, to increase the number of alignments processable on the device, and the adaptive precision, to readjust data precision to performance requirements. Then, we demonstrate our methodology’s effectiveness, implementing the PairHMM algorithm on an NVIDIA RTX A5000 GPU. Experimental results validate our approach, which enables speedups higher than 9000× compared to the algorithm’s Java baseline. Finally, we integrated the design into HaplotypeCaller to demonstrate its usability, and we achieved an 12.68× improvement in execution time against the HaplotypeCaller’s sequential Java baseline without compromising the application’s usability and executing all the alignments on GPU.
Personalized medicine represents a cutting-edge approach to healthcare delivery. In this scenario, genome analysis is crucial to highlight genetic variants and provide customized treatments to each patient. HaplotypeCaller is one of the most relevant tools for variant calling, based on the Pair Hidden Markov Model (PairHMM) algorithm. However, this tool’s analyses require long execution times mainly due to a significant bottleneck represented by the PairHMM algorithm. Moreover, given the algorithm’s compute-intensiveness, general-purpose computing architectures exacerbate this limitation. Thus, offloading it to hardware accelerators is a suitable solution to speed the execution up, as proven in the literature. However, the performance achieved by State-of-the-Art works comes with many constraints on the application’s flexibility, jeopardizing the solutions’ usability. This work proposes a methodology to overcome the performance and flexibility issues and accelerate the PairHMM algorithm on Graphics Processing Unit (GPU). It provides methods to expose parallelism in the algorithm, which is crucial to achieving high performance. Furthermore, it describes two strategies to enable different layers of flexibility: the dynamic memory swap, to increase the number of alignments processable on the device, and the adaptive precision, to readjust data precision to performance requirements. Then, we demonstrate our methodology’s effectiveness, implementing the PairHMM algorithm on an NVIDIA RTX A5000 GPU. Experimental results validate our approach, which enables speedups higher than 9000× compared to the algorithm’s Java baseline. Finally, we integrated the design into HaplotypeCaller to demonstrate its usability, and we achieved an 12.68× improvement in execution time against the HaplotypeCaller’s sequential Java baseline without compromising the application’s usability and executing all the alignments on GPU.
The NECSTLab is a DEIB laboratory, with different research lines on advanced topics in computing systems: from architectural characteristics, to hardware-software codesign methodologies, to security and dependability issues of complex system architectures.
Every week, the “NECSTFridayTalk” invites researchers, professionals or entrepreneurs to share their work experiences and projects they are implementing in the “Computing Systems”.
Event will hold on line by Facebook.