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)

Product and Performance Information

1

Benchmark results were obtained prior to implementation of recent software patches and firmware updates intended to address exploits referred to as "Spectre" and "Meltdown". Implementation of these updates may make these results inapplicable to your device or system.

Software and workloads used in performance tests may have been optimized for performance only on Intel® microprocessors. Performance tests, such as SYSmark* and MobileMark*, are measured using specific computer systems, components, software, operations, and functions. Any change to any of those factors may cause the results to vary. You should consult other information and performance tests to assist you in fully evaluating your contemplated purchases, including the performance of that product when combined with other products. For more complete information visit http://www.intel.com/benchmarks.