Abstract
This paper presents performance results for parallel algorithms that compute the longest common subsequence of two strings. This algorithm is a representative of a class of algorithms that compute string to string distances and has computational complexity O(n 2). The parallel algorithm uses a variable grid size, runs in O(p) supersteps (synchronization phases) and has linear communication costs. We study this algorithm in BSP context, give runtime estimations and compare the predictions to experimental values measured on three different parallel architectures, using different BSP programming libraries and an efficient implementation for sequential computation. We find that using the BSP model and the appropriate optimized BSP library improves the performance over plain MPI, and that scalability can be improved by using a tuned grid size parameter.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C.: Introduction to Algorithms, 2nd edn. MIT Press, Cambridge (2001)
Gibbons, A., Rytter, W.: Efficient parallel algorithms. Cambridge University Press, New York (1988)
Alves, C.E.R., Cáceres, E.N., Dehne, F.: Parallel dynamic programming for solving the string editing problem on a CGM/BSP. In: Proc. of the 14th Annual ACM Symposium on Parallel Algorithms and Architectures (SPAA 2002), pp. 275–281. ACM Press, New York (2002)
Navarro, G.: A guided tour to approximate string matching. ACM Computing Surveys 33(1), 31–88 (2001)
Garcia, T., Myoupo, J.F., Semé, D.: A coarse-grained multicomputer algorithm for the longest common subsequence problem. In: Euro PDP, pp. 349–356 (2003)
Crochemore, M., Iliopoulos, C.S., Pinzon, Y.J.: Recovering an LCS in O(n2/w) time and space. Colombian Journal of Computation 3(1), 41–52 (2002)
Michailidis, P.D., Margaritis, K.G.: New processor array architectures for the longest common subsequence problem. The Journal of Supercomputing 32(1), 51–69 (2005)
Alves, C., Cáceres, E., Dehne, F., Song, S.: A parallel wavefront algorithm for efficient biological sequence comparison. In: Kumar, V., Gavrilova, M.L., Tan, C.J.K., L’Ecuyer, P. (eds.) ICCSA 2003. LNCS, vol. 2668, Springer, Heidelberg (2003)
The PUB library (2005), http://www.uni-paderborn.de/~bsp/
The Oxford BSP Toolset (1999), http://www.bsp-worldwide.org/implmnts/oxtool/
Valiant, L.G.: A bridging model for parallel computation. Communications of the ACM 33(8), 103–111 (1990)
Crochemore, M., Iliopoulos, C.S., Pinzon, Y.J., Reid, J.F.: A fast and practical bit-vector algorithm for the longest common subsequence problem. Information Processing Letters 80(6), 279–285 (2001)
Hyyrö, H., Takaba, J., Shinohara, A., Takeda, M.: On bit-parallel processing of multi-byte text. In: Myaeng, S.-H., Zhou, M., Wong, K.-F., Zhang, H.-J. (eds.) AIRS 2004. LNCS, vol. 3411, pp. 289–300. Springer, Heidelberg (2005)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Krusche, P., Tiskin, A. (2006). Efficient Longest Common Subsequence Computation Using Bulk-Synchronous Parallelism. In: Gavrilova, M.L., et al. Computational Science and Its Applications - ICCSA 2006. ICCSA 2006. Lecture Notes in Computer Science, vol 3984. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11751649_18
Download citation
DOI: https://doi.org/10.1007/11751649_18
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-34079-9
Online ISBN: 978-3-540-34080-5
eBook Packages: Computer ScienceComputer Science (R0)