A bridging model for parallel computation
Communications of the ACM
Efficient parallel algorithms for string editing and related problems
SIAM Journal on Computing
Perspectives of Monge properties in optimization
Discrete Applied Mathematics
Algorithms on strings, trees, and sequences: computer science and computational biology
Algorithms on strings, trees, and sequences: computer science and computational biology
SIAM Journal on Computing
The String-to-String Correction Problem
Journal of the ACM (JACM)
A fast algorithm for computing longest common subsequences
Communications of the ACM
Enumerating longest increasing subsequences and patience sorting
Information Processing Letters
Parallel Scientific Computation: A Structured Approach Using BSP and MPI
Parallel Scientific Computation: A Structured Approach Using BSP and MPI
An all-substrings common subsequence algorithm
Discrete Applied Mathematics
Computational Geometry: Algorithms and Applications
Computational Geometry: Algorithms and Applications
Semi-local longest common subsequences in subquadratic time
Journal of Discrete Algorithms
Fast distance multiplication of unit-Monge matrices
SODA '10 Proceedings of the twenty-first annual ACM-SIAM symposium on Discrete Algorithms
Parallel longest increasing subsequences in scalable time and memory
PPAM'09 Proceedings of the 8th international conference on Parallel processing and applied mathematics: Part I
A CGM algorithm solving the longest increasing subsequence problem
ICCSA'06 Proceedings of the 2006 international conference on Computational Science and Its Applications - Volume Part V
Hi-index | 0.00 |
In this paper, we show new parallel algorithms for a set of classical string comparison problems: computation of string alignments, longest common subsequences (LCS) or edit distances, and longest increasing subsequence computation. These problems have a wide range of applications, in particular in computational biology and signal processing. We discuss the scalability of our new parallel algorithms in computation time, in memory, and in communication. Our new algorithms are based on an efficient parallel method for (min,+)-multiplication of distance matrices. The core result of this paper is a scalable parallel algorithm for multiplying implicit simple unit-Monge matrices of size n x n on p processors using time O( n log n ‾ p). communication O(n log p) ‾ p) and O(log p) supersteps. This algorithm allows us to implement scalable LCS computation for two strings of length n using time O(n2 ‾ p) and communication O(n ‾ √ p), requiring local memory of size O(n ‾ √ p) on each processor. Furthermore, our algorithm can be used to obtain the first generally work-scalable algorithm for computing the longest increasing subsequence (LIS). Our algorithm for LIS computation requires computation O(n log2 n ‾ p), communication O(n log p)/ p), and O(log2 p) supersteps for computing the LIS of a sequence of length n. This is within a log n factor of work-optimality for the LIS problem, which can be solved sequentially in time O(n log n) in the comparison-based model. Our LIS algorithm is also within a log p-factor of achieving perfectly scalable communication and furthermore has perfectly scalable memory size requirements of O(n ‾ p) per processor.