Halvade*

Halvade* is a MapReduce implementation of the best-practice DNA sequencing pipeline as recommended by Broad Institute.

Parallel Efficiency Reaches 91 Percent1

Post-sequencing DNA analysis typically consists of read mapping followed by variant calling. Especially for whole genome sequencing, this computational step is very time-consuming, even when using multithreading on a multi-core machine.

Halvade* is a framework that enables sequencing pipelines to be executed in parallel on a multi-node and/or multi-core compute infrastructure in a highly efficient manner. As an example, a DNA sequencing analysis pipeline for variant calling has been implemented according to the GATK* Best Practices recommendations, supporting both whole genome and whole exome sequencing. Halvade is implemented in Java and uses the Apache Hadoop* MapReduce 2.0 API. For example, it supports the Cloudera Hadoop Distribution* as well as Amazon EMR*.

Performance Results

Using a 15-node computer cluster with 360 CPU cores in total, Halvade processes the NA12878 dataset (human, 100 bp paired-end reads, 50x coverage) in less than 3 hours with high parallel efficiency.1

The speed-up curve shows that the more Hadoop tasks, the better the performance, with almost linear scaling. Here, each task uses six physical Intel® Xeon® CPU cores, which amounts to 12 hardware threads per Hadoop task. The efficiency curve shows the same result: With 360 cores in total, parallel efficiency is at 91.1 percent, indicating that available resources are effectively used.

Without Halvade, the same pipeline would run for an estimated 288 hours (ca. 12 days) on a single node. Even with multithreading enabled within the tools that support it, a runtime of 120 hours (ca. 5 days) was measured. With Halvade, the runtime is reduced to 3 hours on a 15-node Intel® Xeon® CPU cluster running Cloudera Hadoop* Distribution. Using only a single node, the whole pipeline runs in 48 hours (ca. 2 days).

Download the code ›

Reproduce these results with this optimization recipe ›

Publications

Dries Decap, Joke Reumers, Charlotte Herzeel, Pascal Costanza, and Jan Fostier. “Halvade: Scalable sequence analysis with MapReduce.” Bioinformatics (2015) 31 (15): 2482-2488 first published online March 26, 2015.

Read the Halvade analysis article ›

Configuration Table

System Overview

 

Nodes

15 nodes, with 64 GB RAM each

Processor

In total: 30 Intel® Xeon® E5-2695 v2 processor CPUs @ 2.40 GHz each

Cores

In total: 360 physical cores (720 threads)

RAM

In total: 960 GB RAM

Apache Hadoop* Distribution

Cloudera version 5.0.1b

Tasks Per Node

4 tasks per node, each task using 6 physical cores (12 threads)

Infos sur le produit et ses performances

1

Les résultats des bancs d'essai ont été obtenus avant le déploiement de récents correctifs logiciels et mises à jour micrologicielles destinés à faire face aux failles de sécurité « Spectre » et « Meltdown ». L'installation de ces mises à jour peut rendre ces résultats inapplicables à votre appareil ou système.

Les logiciels et charges de travail utilisés dans les tests de performance ont peut-être été optimisés uniquement pour les microprocesseurs Intel®. Les tests de performance tels que SYSmark* et MobileMark* portent sur des configurations, composants, logiciels, opérations et fonctions spécifiques. Les résultats peuvent varier en fonction de ces facteurs. Pour l'évaluation complète d'un produit, il convient de consulter d'autres tests et d'autres sources d'informations, notamment pour connaître le comportement de ce produit lorsqu'il est associé à d'autres composants. Consultez http://www.intel.fr/benchmarks à ce sujet.