16X Speed-Up of Map-Reduce Framework for Genome Analysis Achieved on $2,500 FPGA Module

June 14, 2012 — Impulse Accelerated Technologies, Inc.

Impulse Accelerated Technologies and Pico Computing released performance statistics for an acceleration of the Genome Analysis Tool Kit (GATK) used in bioinformatics research. In a compelling proof-of-concept project, the Impulse and Pico team were able to speed processing of a common GATK workflow by 16X when compared to the original software-only implementation.

GATK is a software library used to create workflows for genomic sequencing, as well as being as being a collection of tools for translational medicine in projects such as the The Cancer Genome Atlas (TCGA).

Working from GATK code originally developed in Java from the Broad Institute at Harvard, the Impulse/Pico team was able to parallelize the framework and improve performance by 16X. The team built the proof of concept on an inexpensive Pico Computing M-501 -based acceleration module. The M-501 is a small hardware module, about the size of a business card, x8 Gen2 PCIe connected board using a Xilinx Virtex 6 FPGA. Selling (in volume) for under $2,500, the accelerator was able to provide the engineer millions of available gates.

Using this architecture the engineer parallelized the GATK framework to run as 12 individual streaming processes. The improvement in parallel computing throughput was achieved within the Impulse C toolset. Working with sophisticated stage delay analysis, the engineer reduced the average number of clock cycles per base to 25. The optimized C code was compiled with the Impulse C tools into synthesizable . The VHDL was exported to Xilinx ISE and mapped against the Virtex 6 for optimal place & route.

“Next generation sequencing machines pose a huge challenge for the bioinformatics community,” said Dr. Scott Hauck, Professor of Electrical Engineering at the University of Washington. “Getting significant speedups in a framework allows a scientist to actually understand and optimize their results is a compelling way, and helps to move FPGA performance into the genomics lab.”

An Impulse C model was developed for the GATK framework, together with an example application based on the coverage sample included in the GATK. The coverage sample classifies the data available at each location as “callable,” “poor quality,” “low coverage,” or “no coverage.” The Impulse C model was implemented on the M-501 PCIe board from Pico Computing. This board includes a Virtex 6 LX240T with 512MB of on-board memory.

By using this architecture to parallelize the GATK framework, the team was able to the GATK workflow as 12 individual streaming processes, each of which was internally pipelined for high throughput. These improvements in throughput for GATK were achieved within the Impulse C toolset, using iterative methods of design. Working with sophisticated pipeline stage delay analysis tools, the developers were able to reduce the average number of clock cycles required per base to 25. The optimized C code was compiled with the Impulse C tools into synthesizable VHDL. The VHDL was exported to Xilinx FPGA mapping tools and implemented in the Pico M501 module.

This implementation used less than half of the resources available on the FPGA, and operates at 150MHz. The host processor used for comparison was a Xeon E5520 CPU running at 2.27GHz. The FPGA implementation took 10.5 seconds to process sample data while the original GATK application took 170 seconds, representing a 16X performance improvement.

Brian Durwood, CEO of Impulse, stated that the company is actively looking for research partners to extend and commercialize this initial proof of concept.

In addition to the GATK framework, there are published results of Impulse C based Smith-Waterman algorithms by the University of Florida and IRISA in France. These and other bio related algorithms in Impulse C enable researchers to get a started in the growing field of FPGA-accelerated life sciences. Kits that include the Pico M501, Impulse C, Xilinx FPGA tools, and the framework code are available. Interested parties may contact Pico or Impulse for more information.


About Impulse


Founded in 2002 from technology developed in government labs, Impulse grew to become the most widely used C-to-FPGA software. Customers include government, research, finance, medical and consumer teams. Impulse C provides a readily accessible system for C programmers to refactor code into formats optimal for compilation into Field Programmable Gate Arrays available from Xilinx or Altera. www.ImpulseAccelerated.com


About Pico


Pico Computing, headquartered in Seattle, Washington, specializes in highly integrated development and deployment platforms based on Field Programmable Gate Array (FPGA) technologies. We are hardware and embedded software design experts with domain knowledge in applications that include cryptography, networking, , bioinformatics, and scientific computing. www.PicoComputing.com


Topics covered in this article


Subscribe to FPGA updates