Skip to main content
Log in

Parallel Smith-Waterman Comparison on Multicore and Manycore Computing Platforms with BSP++

  • Published:
International Journal of Parallel Programming Aims and scope Submit manuscript

Abstract

Biological Sequence Comparison is an important operation in Bioinformatics that is often used to relate organisms. Smith and Waterman proposed an exact algorithm that compares two sequences in quadratic time and space. Due to high computing power and memory requirements, SW is usually executed on High Performance Computing (HPC) platforms such as multicore clusters and CellBEs. Since HPC architectures exhibit very different hardware characteristics, porting an application to them is an error-prone time-consuming task. BSP++ is an implementation of BSP that aims to facilitate parallel programming, reducing the effort to port code. In this paper, we propose and evaluate a parallel BSP++ strategy to execute SW on multiple multicore and manycore platforms. Given the same base code, we generated MPI, OpenMP, MPI/OpenMP, CellBE and MPI/CellBE versions, which were executed on heterogeneous platforms with up to 6,144 cores. The results obtained with real DNA sequences show that the performance of our versions is comparable to the hand-tuned strategies in the literature, evidencing the appropriateness and flexibility of our approach.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Aji, A., Feng, W.: Optimizing performance; cost and sensitivity in pairwise sequence search on a cluster of playstation, In: Proceedings of the 8th IEEE International Conference on BioInformatics and BioEngineering (2008)

  2. Aji, A., Feng, W., Blagojevic, F., Nikolopoulos, D.: Cell-swat: modeling and scheduling wavefront computations on the cell broadband engine. In: Proceedings of the Computing Frontiers Conference (2008)

  3. Bellens, P., Peres, J.M., Badia, R.M., Labarta, J.: Cellss: a programming model for the cell be architecture. In: Proceedings of the 2006 Supercomputing Conference (SC06) (2006)

  4. Beran, M.: Decomposable bulk synchronous parallel computers. In: SOFSEM 99: Proceedings of the 26th Conference on Current Trends in Theory and Practice of Informatics on Theory and Practice of Informatics, pp. 349–359 (1999)

  5. Bisseling, R.H., Mccoll, W.F.: Scientific computing on bulk synchronous parallel architectures. In: Proceedings of 13th IFIP World Computer Congress, p. 31 (1994)

  6. Boukerche, A., Batista, R.B., Melo, A.C.M.A.: Exact pairwise alignment of megabase genome biological sequences using a novel z-align parallel strategy. In: Proceedings of the 2009 IPDPS Workshop on Nature-Inspired Distributed Systems (2009)

  7. Cappello, F., Desprez, F., Margery, D.: Grid5000. https://www.grid5000.fr/mediawiki/index.php/Grid5000 Jan 2010

  8. Chen, C., Schmidt, B.: Computing large-scale alignments on a multi-cluster. In: Proceedings of the IEEE International Conference on Cluster Computing, pp. 38–45 (2003)

  9. Collins, R.L., Vellore, B., Carloni, L.P.: Recursion-driven parallel code generation for multi-core platforms. In: Proceedings of the Design, Automation and Test in Europe (DATE) (2010)

  10. Duran A. et al.: Ompss: a proposal for programming heterogeneous multi-core architectures. Parallel Process. Lett. 21(2), 173–193 (2011)

    Article  MathSciNet  Google Scholar 

  11. Fatahalian, K. et al.: Sequoia: programming the memory hierarchy. In: Proceedings of the 2006 Supercomputing Conference (SC06) (2006)

  12. Hamidouche, K., Falcou, J., Etiemble, D.: Hybrid bulk synchronous parallelism library for clustered smp architectures. In: Proceedings of the 4th International Workshop on High-level Parallel Programming and Applications (HLPP 2010) (2010)

  13. IBM: Software development kit for multicore acceleration v. 3.1. Available at https://www-01.ibm.com/chips/techlib/techlib.nsf/techdocs/ (2008)

  14. IBM: Sony, Toshiba. Cell broadband engine architecture. Available at https://www-01.ibm.com/chips/techlib/techlib.nsf/techdocs/ (2007)

  15. Kunzman, D.M., Kale, L.K.: Towards a framework for abstracting accelerators in parallel applications: Experience with cell. In: Proceedings of the 2009 Supercomputing Conference (SC09) (2009)

  16. Liu, Y., Schmidt, B., Maskell, D.L.: Cudasw++ 2.0: enhanced smith-waterman protein database search on cuda-enabled gpus based on simt and virtualized simd abstractions. BMC Res. Note 93(3) (2010)

  17. Mount D.: Bioinformatics: Sequences and Genome Alignment. Cold Spring Harbor Laboratory Press, New York (2004)

    Google Scholar 

  18. Myers E.W., Miller W.: Optimal alignments in linear space. Comput. Appl. Biosci. 4(1), 11–17 (1988)

    Google Scholar 

  19. Noorian M., Pooshfam H., Noorian Z., Abdulla R.: Performance enhancement of smith-waterman algorithm using hybrid model: comparing the mpi and hybrid programming paradigm on smp clusters. In: Proceedings of the 2009 IEEE International Conference on Systems, Man, and Cybernetics (2009)

  20. Pfister, G.F.: In Search of Clusters: The Coming Battle for Lowly Parallel Computing. Prentice Hall, Englewood Cliffs, NJ (1997)

  21. Rajko S., Aluru S.: Space and time optimal parallel sequence alignments. IEEE Trans. Parallel Distrib. Syst. 15(12), 1070–1081 (2004)

    Article  Google Scholar 

  22. Sachdeva V., Kistler M., Speight E., Tzeng T.: Exploring the viability of the cell broadband engine for bioinformatics applications. Parallel Comput. 34(11), 616–626 (2008)

    Article  Google Scholar 

  23. Sandes, E.F.O., Melo, A.C.M.A.: 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 Programming, pp. 137–146 (2010)

  24. Sarje A., Aluru S.: Parallel genomic alignments on the cell broadband engine. IEEE Trans. Parallel Distrib. Syst. 20(11), 1600–1610 (2009)

    Article  Google Scholar 

  25. Smith T., Waterman M.: Identification of common molecular subsequences. J. Mol. Biol. 147, 195–197 (1981)

    Article  Google Scholar 

  26. Song, Y., Striemer, G., Akoglu, A.: Performance analysis of IBM cell broadband engine on sequence alignment. In: Proceedings of the 2009 NASA/ESA Conference on Adaptive Hardware and Systems, pp. 439–446 (2009)

  27. Sousa M.S., Melo A.C.M.A., Boukerche A.: An adaptive multi-policy grid service for biological sequence comparison. J. Parallel Distrib. Comput. 70(2), 160–172 (2010)

    Article  MATH  Google Scholar 

  28. Szalkowski, A., Ledergerber, C., Krahenbuhl, P., Dessimoz, C.: Swps3—fast multi-threaded vectorized smith-waterman for ibm cellb.e. and x86sse2. BMC Res. Note. 1, 107–110 (2008)

  29. Valiant L.: A bridging model for parallel computation. Commun. ACM 33, 103–111 (1990)

    Article  Google Scholar 

  30. Wirawan A., Schmidt B., Zhang H., Kwoh C.: High performance protein sequence database scanning on the cell broadband engine. Sci. Comput. 17, 97–111 (2009)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Alba Cristina Magalhaes Alves de Melo.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Hamidouche, K., Mendonca, F.M., Falcou, J. et al. Parallel Smith-Waterman Comparison on Multicore and Manycore Computing Platforms with BSP++. Int J Parallel Prog 41, 111–136 (2013). https://doi.org/10.1007/s10766-012-0209-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10766-012-0209-6

Keywords

Navigation