Scalable and highly parallel implementation of Smith-Waterman on graphics processing unit using CUDA
- First Online:
- 154 Downloads
Program development environments have enabled graphics processing units (GPUs) to become an attractive high performance computing platform for the scientific community. A commonly posed problem in computational biology is protein database searching for functional similarities. The most accurate algorithm for sequence alignments is Smith-Waterman (SW). However, due to its computational complexity and rapidly increasing database sizes, the process becomes more and more time consuming making cluster based systems more desirable. Therefore, scalable and highly parallel methods are necessary to make SW a viable solution for life science researchers. In this paper we evaluate how SW fits onto the target GPU architecture by exploring ways to map the program architecture on the processor architecture. We develop new techniques to reduce the memory footprint of the application while exploiting the memory hierarchy of the GPU. With this implementation, GSW, we overcome the on chip memory size constraint, achieving 23× speedup compared to a serial implementation. Results show that as the query length increases our speedup almost stays stable indicating the solid scalability of our approach. Additionally this is a first of a kind implementation which purely runs on the GPU instead of a CPU-GPU integrated environment, making our design suitable for porting onto a cluster of GPUs.
KeywordsGraphics processing unit Scalable Parallel Alignment Smith-Waterman CUDA
Unable to display preview. Download preview PDF.
- 4.Liao, Y.H., Yin, L.M., Cheng, Y.: A parallel implementation of the Smith-Waterman algorithm for sequence searching. In: Proceedings of the 26th Annual International Conference of the IEEE EMBS. San Francisco, California, September 1–5, 2004 Google Scholar
- 5.Liu, W., Schmidt, B., Voss, G., Schröder, A., Müller-Wittig, W.: Bio-sequence database scanning on a GPU. In: Proceedings of the 20th IEEE International Parallel & Distributed Processing Symposium, HICOMB Workshop (2006) Google Scholar
- 6.Manavski, S.S.: Smith-Waterman User Guide. http://bioinformatics.cribi.unipd.it/cuda/docs/SWCudaUserGuide.pdf (2008)
- 8.Mount, D.W.: Bioinformatics: Sequence and Genome Analysis. Cold Spring Harbor Laboratory Press, Cold Spring Harbor (2004), pp. 64–65, 71–87 Google Scholar
- 9.NVIDIA Corporation: NVIDIA CUDA compute unified device architecture programming guide. http://www.nvidia.com/object/cuda_develop.html (2008)
- 10.NVIDIA Corporation: NVIDIA Tesla C870 overview. http://www.nvidia.com/object/tesla_c870.html (May 2008)
- 11.Sanchez, F., Salamí, E., Ramierez, A., Valero, M.: Performance analysis of sequence alignment applications. In: Proceedings of the IEEE International Symposium on Workload Characterization, pp. 51–60 (2006) Google Scholar
- 13.UVA: FASTA program webpage. http://fasta.bioch.virginia.edu/fasta_www2/fasta_down.shtml (2008)