Accelerating Smith-Waterman Alignment of Long DNA Sequences with OpenCL on FPGA

  • Enzo Rucci
  • Carlos GarciaEmail author
  • Guillermo Botella
  • Armando De Giusti
  • Marcelo Naiouf
  • Manuel Prieto-Matias
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10209)


With the greater importance of parallel architectures such as GPUs or Xeon Phi accelerators, the scientific community has developed efficient solutions in the bioinformatics field. In this context, FPGAs begin to stand out as high performance devices with moderate power consumption. This paper presents and evaluates a parallel strategy of the well-known Smith-Waterman algorithm using OpenCL on Intel/Altera’s FPGA for long DNA sequences. We efficiently exploit data and pipeline parallelism on a Intel/Altera Stratix V FPGA reaching upto 114 GCUPS in less than 25 watt power requirements.


Field Programmable Gate Array Graphic Processor Unit Field Programmable Gate Array Implementation Latency Memory Access Dedicated Memory 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.



This work has been partially supported by Spanish government through research contract TIN2015-65277-R and CAPAP-H5 network (TIN2014-53522).


  1. 1.
    Altschul, S.F., Madden, T.L., Schffer, A.A., Zhang, J., Zhang, Z., Miller, W., Lipman, D.J.: Gapped BLAST and PSIBLAST: a new generation of protein database search programs. Nucleic Acid Res. 25(17), 3389–3402 (1997)CrossRefGoogle Scholar
  2. 2.
    Caffarena, G., Pedreira, C.E., Carreras, C., Bojanic, S., Nieto-Taladriz, O.: FPGA acceleration for DNA sequence alignment. J. Circuits Syst. Comput. 16(2), 245–266 (2007)CrossRefGoogle Scholar
  3. 3.
    Altera Corporation: Altera SDK for OpenCL Programming Guide, v14.0 (2014)Google Scholar
  4. 4.
    de Oliveira Sandes, E.F., Miranda, G., Alves de Melo, A.C.M., Martorell, X., Ayguadé, E.: CUDAlign 3.0: parallel biological sequence comparison in large GPU clusters. In: CCGRID, pp. 160–169. IEEE Computer Society (2014)Google Scholar
  5. 5.
    de Oliveira Sandes, E.F., Miranda, G., Martorell, X., Ayguad, E., Teodoro, G., Alves de Melo, A.C.M.: CUDAlign 4.0: incremental speculative traceback for exact chromosome-wide alignment in GPU clusters. IEEE Trans. Parallel Distrib. Syst. 27(10), 2838–2850 (2016)CrossRefGoogle Scholar
  6. 6.
    Feldman, M.: Microsoft goes all in for FPGAs to build out AI cloud (2016).
  7. 7.
    Gotoh, O.: An improved algorithm for matching biological sequences. J. Mol. Biol. 162, 705–708 (1981)CrossRefGoogle Scholar
  8. 8.
    Khronos Group: The OpenCL Specification, version 2 (2014)Google Scholar
  9. 9.
    Korpar, M., Sikic, M.: SW# - GPU-enabled exact alignments on genome scale. Bioinformatics 29(19), 2494–2495 (2013)CrossRefGoogle Scholar
  10. 10.
    Leopold, G.: AWS Embraces FPGAs, Elastic GPUs (2016).
  11. 11.
    Leopold, G.: Intels FPGAs target datacenters, networking (2016).
  12. 12.
    Liu, Y., Tran, T.T., Lauenroth, F., Schmidt, B.: SWAPHI-LS: Smith-Waterman Algorithm on Xeon Phi coprocessors for long DNA sequences. In: IEEE International Conference on Cluster Computing (CLUSTER), pp. 257–265 (2014)Google Scholar
  13. 13.
    Mount, D.W.: Bioinformatics: Sequence and Genome Analysis. Cold Spring Harbor Laboratory Press, Mount (2004)Google Scholar
  14. 14.
    Pearson, W.R., Lipman, D.J.: Improved tools for biological sequence comparison. Proc. Nat. Acad. Sci. U.S.A. 85(8), 2444–2448 (1988)CrossRefGoogle Scholar
  15. 15.
    Rucci, E., García, C., Botella, G., Giusti, A., Naiouf, M., Prieto-Matías, M.: State-of-the-Art in Smith–Waterman protein database search on HPC platforms. In: Wong, K.-C. (ed.) Big Data Analytics in Genomics, pp. 197–223. Springer, Cham (2016). doi: 10.1007/978-3-319-41279-5_6 CrossRefGoogle Scholar
  16. 16.
    Rucci, E., Garca, C., Botella, G., De Giusti, A., Naiouf, M., Prieto-Matas, M.: An energy-aware performance analysis of SWIMM: SmithWaterman implementation on Intel’s multicore and manycore architectures. Concurrency Comput. Pract. Exp. 27(18), 5517–5537 (2015)CrossRefGoogle Scholar
  17. 17.
    Rucci, E., Garca, C., Botella, G., De Giusti, A., Naiouf, M., Prieto-Matas, M.: OSWALD: OpenCL Smith-Waterman Algorithm on Altera FPGA for large protein databases. Int. J. High Perform. Comput. Appl. (2016). doi: 10.1177/1094342016654215
  18. 18.
    de Oliveira Sandes, E.F., Alves de Melo, A.C.M: CUDAlign: using GPU to accelerate the comparison of megabase genomic sequences. In: Proceedings of the 15th ACM SIGPLAN Symposium on Principles and Practice of Parallel Computing, PPoPP 2010, pp. 137–146. ACM, New York (2010)Google Scholar
  19. 19.
    Settle, S.O.: High-performance dynamic programming on FPGAs with OpenCL. In: IEEE High Performance Extreme Computing Conference (HPEC 2013), pp. 1–6 (2013)Google Scholar
  20. 20.
    Smith, T.F., Waterman, M.S.: Identification of common molecular subsequences. J. Mol. Biol. 147(1), 195–197 (1981)CrossRefGoogle Scholar
  21. 21.
    Wienbrandt, L.: Bioinformatics applications on the FPGA-based high-performance computer RIVYERA. In: Vanderbauwhede, W., Benkrid, K. (eds.) High-Performance Computing Using FPGAs, pp. 81–103. Springer, New York (2013). doi: 10.1007/978-1-4614-1791-0_3 CrossRefGoogle Scholar
  22. 22.
    Yamaguchi, Y., Tsoi, H.K., Luk, W.: FPGA-based Smith-Waterman Algorithm: analysis and novel design. In: Koch, A., Krishnamurthy, R., McAllister, J., Woods, R., El-Ghazawi, T. (eds.) ARC 2011. LNCS, vol. 6578, pp. 181–192. Springer, Heidelberg (2011). doi: 10.1007/978-3-642-19475-7_20 CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Enzo Rucci
    • 1
  • Carlos Garcia
    • 2
    Email author
  • Guillermo Botella
    • 2
  • Armando De Giusti
    • 1
  • Marcelo Naiouf
    • 3
  • Manuel Prieto-Matias
    • 2
  1. 1.III-LIDI, CONICET, Facultad de InformáticaUniversidad Nacional de La PlataLa PlataArgentina
  2. 2.Depto. Arquitectura de Computadores y AutomáticaUniversidad Complutense de MadridMadridSpain
  3. 3.III-LIDI, Facultad de InformáticaUniversidad Nacional de La PlataLa PlataArgentina

Personalised recommendations