MUMmerGPUpp

From NetSysLab

Jump to: navigation, search

Contents

Optimizing genome sequence alignment for GPU offloading

GPUs offer drastically different performance characteristics compared to traditional multicore architectures. To explore the tradeoffs exposed by this difference, we refactor MUMmer, a widely-used, highly-engineered bioinformatics application which has both CPU- and GPU-based implementations.

We synthesize our experience as three high-level guidelines to design efficient GPU-based applications. First, minimizing the communication overheads is as important as optimizing the computation. Second, trading-off higher computational complexity for a more compact in-memory representation is a valuable technique to increase overall performance (by enabling higher parallelism levels and reducing transfer overheads). Finally, ensuring that the chosen solution entails low pre- and post-processing overheads is essential to maximize the overall performance gains. Based on these insights, MUMmerGPU++, our GPU-based design of the MUMmer sequence alignment tool, achieves, on realistic workloads, up to 4x speedup compared to a previous, highly optimized GPU port.

People

Abdullah Gharaibeh
Matei Ripeanu

Download

MUMmerGPU++ V0.1
Workloads

Publications

[2] Accelerating Sequence Alignment on Hybrid Architectures, Abdullah Gharaibeh, Matei Ripeanu, Scientific Computing Magazine, January/February 2011. pdf
[1] Size Matters: Space/Time Tradeoffs to Improve GPGPU Applications Performance, Abdullah Gharaibeh and Matei Ripeanu, IEEE/ACM International Conference for High Performance Computing, Networking, Storage, and Analysis (SC 2010), New Orleans, LA, November 2010. (acceptance rate 20%) pdf slides

Related Links

nVidia's BioWorkBench link
The original MUMmer and MUMmerGPU packages