This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Using GPUs for the Exact Alignment of Short-Read Genetic Sequences by Means of the Burrows-Wheeler Transform
July-Aug. 2012 (vol. 9 no. 4)
pp. 1245-1256
J. Dopazo Blazquez, Bioinf. & Genomics Dept., CIPF, Valencia, Spain
J. Terraga Gimenez, Bioinf. & Genomics Dept., CIPF, Valencia, Spain
I. Medina Castello, Bioinf. & Genomics Dept., CIPF, Valencia, Spain
V. Hernendez Garcia, Centro Mixto CSIC, Univ. Politec. de Valencia-CIEMAT, Valencia, Spain
I. B. Espert, Centro Mixto CSIC, Univ. Politec. de Valencia-CIEMAT, Valencia, Spain
A. T. Dominguez, Centro Mixto CSIC, Univ. Politec. de Valencia-CIEMAT, Valencia, Spain
J. S. Torres, Centro Mixto CSIC, Univ. Politec. de Valencia-CIEMAT, Valencia, Spain
General Purpose Graphic Processing Units (GPGPUs) constitute an inexpensive resource for computing-intensive applications that could exploit an intrinsic fine-grain parallelism. This paper presents the design and implementation in GPGPUs of an exact alignment tool for nucleotide sequences based on the Burrows-Wheeler Transform. We compare this algorithm with state-of-the-art implementations of the same algorithm over standard CPUs, and considering the same conditions in terms of I/O. Excluding disk transfers, the implementation of the algorithm in GPUs shows a speedup larger than 12×, when compared to CPU execution. This implementation exploits the parallelism by concurrently searching different sequences on the same reference search tree, maximizing memory locality and ensuring a symmetric access to the data. The paper describes the behavior of the algorithm in GPU, showing a good scalability in the performance, only limited by the size of the GPU inner memory.

[1] "Metagenomics Versus Moore's Law," Nature Methods, vol. 6, no. 9, p. 623, http://dx.doi.org/10.1038nmeth0909-623, Sept. 2009.
[2] T.F. Smith and M.S. Waterman, "Identification of Common Molecular Subsequences," J. Molecular Biology, vol. 147, pp. 195-197, 1981.
[3] O. Gotoh, "An Improved Algorithm for Matching Biological Sequences," J. Molecular Biology, vol. 162, pp. 705-708, 1982.
[4] S.F. Altschul et al., "Basic Local Alignment Search Tool," J. Molecular Biology, vol. 215, pp. 403-410, 1990.
[5] S.F. Altschul, T.L. Madden, A.A. Schaffer, J. Zhang, Z. Zhang, W. Miller, and D.J. Lipman, "Gapped Blast and Psi-Blast: A New Generation of Protein Database Search Programs," Nucleic Acids Research, vol. 25, pp. 3389-3402, 1997.
[6] H. Li and R. Durbin, "Fast and Accurate Short Read Alignment with Burrows-Wheeler Transform," Bioinformatics, vol. 25, no. 14, pp. 1754-1760, http://dx.doi.org/10.1093/bioinformatics btp324, 2009.
[7] NVIDIA, "Cuda Website," http://developer.NVidia.com/objectcuda.html , 2012.
[8] B. Langmead, C. Trapnell, M. Pop, and S.L. Salzberg, "Ultrafast and Memory-Efficient Alignment of Short DNA Sequences to the Human Genome," Genome Biology, vol. 10, no. 3, p. R25, Mar. 2009.
[9] R. Li, C. Yu, Y. Li, T.-W. Lam, S.-M. Yiu, K. Kristiansen, and J. Wang, "SOAP2: An Improved Ultrafast Tool for Short Read Alignment," J. Bioinformatics, vol. 25, no. 15, pp. 1966-1967, Aug. 2009.
[10] C.-M. Liu et al., "Soap3: GPU-Based Compressed Indexing and Ultra-Fast Parallel Alignment of Short Reads," Proc. Third Workshop Massive Data Algorithmics, June. 2011.
[11] H. Li and N. Homer, "A Survey of Sequence Alignment Algorithms for Next-Generation Sequencing," Briefings in Bioinformatics, vol. 11, no. 5, pp. 473-483, http://dx.doi.org/10.1093/bibbbq015, 2010.
[12] D.J. Lipman and W.R. Pearson, "Rapid and Sensitive Protein Similarity Searches," Science, vol. 227, pp. 1435-1441, 1985.
[13] Pearson and Lipman, "Improved Tools for Biological Sequence Comparison," Proc. Nat'l Academy Sciences USA, vol. 85, pp. 2444-2448, 1988.
[14] "Ssearch," http://www.caspur.it/~castri/bioinformatica/ gcghelpssearch.html. 2012.
[15] Z. Ning, A.J. Cox, and J.C. Mullikin, "SSAHA: A Fast Search Method for Large DNA Databases," Genome Research, vol. 11, no. 10, pp. 1725-1729, Oct. 2001.
[16] W.J. Kent, "BLAT - The BLAST-Like Alignment Tool," Genome Research, vol. 12, no. 4, pp. 656-664, Apr. 2002.
[17] M. Burrows and D.J. Wheeler, "A Block-Sorting Lossless Data Compression Algorithm," Technical Report 124, SRC (Digital, DEC, Palo Alto), May 1994.
[18] J.-S. Varré, B. Schmidt, S. Janot, and M. Giraud, Manycore High-Performance Computing in Bioinformatics, http://hal.archives-ouvertes.fr/hal-00563408 en/; http://hal.archives-ouvertes.fr/docs/00/ 56/34/08/PDFvarre-manycore-bioinformatics.pdf , 2011.
[19] NVIDIA, "Nvidia Cuda C Programming Guide," http:// developer.download.nvidia.com/ compute/cuda/4_0_rc2/ toolkit/docsCUDA_Toolkit_Reference_Manual.pdf , version 4.0. Mar. 2011.
[20] K.O.W. Group, "The Opencl Specification," http://www.khronos. org/registry/cl/specs opencl-1.0.29.pdf, version 1.1 Revision 44, Jan. 2011.
[21] A. Munshi, B. Gaster, T.G. Mattson, J. Fung, and D. Ginsburg, OpenCL Programming Guide. Addison Wesley, 2011.
[22] W. Liu, B. Schmidt, G. Voss, A. Schroder, and W. Muller-Wittig, "Bio-Sequence Database Scanning on a GPU," Proc. Fifth IEEE Int'l Workshop High Performance Computational Biology, http://www.hicomb.org/papersHICOMB2006-01.pdf , 2006.
[23] S. Manavski and G. Valle, "CUDA Compatible GPU Cards as Efficient Hardware Accelerators for Smith-Waterman Sequence Alignment," BMC Bioinformatics, vol. 9, Suppl2 article no. S10, http://dx.doi.org/10.11861471-2105-9-S2-S10 , 2008.
[24] L. Ligowski and W. Rudnicki, "An Efficient Implementation of Smith Waterman Algorithm on GPU Using CUDA, for Massively Parallel Scanning of Sequence Databases," Proc. IEEE Int'l Symp. Parallel and Distributed Processing (IPDPS), pp. 1-8, http://dx.doi.org/10.1109IPDPS.2009.5160931 , 2009.
[25] G.M. Striemer and A. Akoglu, "Sequence Alignment with GPU: Performance and Design Challenges," Proc. IEEE Int'l Symp. Parallel and Distributed Processing (IPDPS), pp. 1-10, http://dx.doi.org/10.1109IPDPS.2009.5161066 , 2009.
[26] P.D. Vouzis and N.V. Sahinidis, "GPU-BLAST: Using Graphics Processors to Accelerate Protein Sequence Alignment," Bioinformatics, vol. 27, no. 2, pp. 182-188, http://dx.doi.org/10.1093/bioinformatics btq644, 2011.
[27] C. Ling and K. Benkrid, "Design and Implementation of a CUDA-Compatible GPU-Based Core for Gapped BLAST Algorithm," Procedia Computer Science, vol. 1, no. 1, pp. 495-504, http://dx.doi.org/10.1016j.procs.2010.04.053 , 2010.
[28] G. Manzini, "An Analysis of the Burrows-Wheeler Transform," Proc. 10th Ann. ACM-SIAM Symp. Discrete Algorithms, pp. 669-677, Jan. 1999.
[29] P. Ferragina and G. Manzini, "Opportunistic Data Structures with Applications," Proc. 41st Ann. Symp. Foundations of Computer Science (FOCS), pp. 390-398, 2000.
[30] Proc. 23rd IEEE Int'l Symp. Parallel and Distributed Processing (IPDPS '09), May 2009.

Index Terms:
tree searching,biology computing,genetics,graphics processing units,parallel processing,sequences,transforms,GPU inner memory,short-read genetic sequences,Burrows-Wheeler transform,general purpose graphic processing unit,GPGPU,fine-grain parallelism,exact alignment tool,nucleotide sequence,standard CPU,I/O,CPU execution,search tree,memory locality,Graphics processing unit,Bioinformatics,Transforms,Algorithm design and analysis,Vectors,Genomics,Indexes,Burrows-Wheeler Transform.,Short-read alignment,CUDA,GPU
Citation:
J. Dopazo Blazquez, J. Terraga Gimenez, I. Medina Castello, V. Hernendez Garcia, I. B. Espert, A. T. Dominguez, J. S. Torres, "Using GPUs for the Exact Alignment of Short-Read Genetic Sequences by Means of the Burrows-Wheeler Transform," IEEE/ACM Transactions on Computational Biology and Bioinformatics, vol. 9, no. 4, pp. 1245-1256, July-Aug. 2012, doi:10.1109/TCBB.2012.49
Usage of this product signifies your acceptance of the Terms of Use.