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.
Access this article
We’re sorry, something doesn't seem to be working properly.
Please try refreshing the page. If that doesn't work, please contact support so we can address the problem.
Similar content being viewed by others
References
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)
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)
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)
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)
Bisseling, R.H., Mccoll, W.F.: Scientific computing on bulk synchronous parallel architectures. In: Proceedings of 13th IFIP World Computer Congress, p. 31 (1994)
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)
Cappello, F., Desprez, F., Margery, D.: Grid5000. https://www.grid5000.fr/mediawiki/index.php/Grid5000 Jan 2010
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)
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)
Duran A. et al.: Ompss: a proposal for programming heterogeneous multi-core architectures. Parallel Process. Lett. 21(2), 173–193 (2011)
Fatahalian, K. et al.: Sequoia: programming the memory hierarchy. In: Proceedings of the 2006 Supercomputing Conference (SC06) (2006)
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)
IBM: Software development kit for multicore acceleration v. 3.1. Available at https://www-01.ibm.com/chips/techlib/techlib.nsf/techdocs/ (2008)
IBM: Sony, Toshiba. Cell broadband engine architecture. Available at https://www-01.ibm.com/chips/techlib/techlib.nsf/techdocs/ (2007)
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)
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)
Mount D.: Bioinformatics: Sequences and Genome Alignment. Cold Spring Harbor Laboratory Press, New York (2004)
Myers E.W., Miller W.: Optimal alignments in linear space. Comput. Appl. Biosci. 4(1), 11–17 (1988)
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)
Pfister, G.F.: In Search of Clusters: The Coming Battle for Lowly Parallel Computing. Prentice Hall, Englewood Cliffs, NJ (1997)
Rajko S., Aluru S.: Space and time optimal parallel sequence alignments. IEEE Trans. Parallel Distrib. Syst. 15(12), 1070–1081 (2004)
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)
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)
Sarje A., Aluru S.: Parallel genomic alignments on the cell broadband engine. IEEE Trans. Parallel Distrib. Syst. 20(11), 1600–1610 (2009)
Smith T., Waterman M.: Identification of common molecular subsequences. J. Mol. Biol. 147, 195–197 (1981)
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)
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)
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)
Valiant L.: A bridging model for parallel computation. Commun. ACM 33, 103–111 (1990)
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)
Author information
Authors and Affiliations
Corresponding author
Rights 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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10766-012-0209-6