Communications of the ACM - Special issue on parallelism
A bit-string longest-common-subsequence algorithm
Information Processing Letters
Efficient parallel algorithms for string editing and related problems
SIAM Journal on Computing
Parallel algorithms for dynamic programming recurrences with more than O(1) dependency
Journal of Parallel and Distributed Computing
Journal of the ACM (JACM)
A linear space algorithm for computing maximal common subsequences
Communications of the ACM
A fast and practical bit-vector algorithm for the longest common subsequence problem
Information Processing Letters
Parallel biological sequence comparison using prefix computations
Journal of Parallel and Distributed Computing
Parallelism exposure and exploitation in programs
Parallelism exposure and exploitation in programs
IPDPS '09 Proceedings of the 2009 IEEE International Symposium on Parallel&Distributed Processing
Bit-Parallel Algorithm for the Constrained Longest Common Subsequence Problem
Fundamenta Informaticae
Error bounds for convolutional codes and an asymptotically optimum decoding algorithm
IEEE Transactions on Information Theory
Hi-index | 0.00 |
This paper proposes an efficient parallel algorithm for an important class of dynamic programming problems that includes Viterbi, Needleman-Wunsch, Smith-Waterman, and Longest Common Subsequence. In dynamic programming, the subproblems that do not depend on each other, and thus can be computed in parallel, form stages or wavefronts. The algorithm presented in this paper provides additional parallelism allowing multiple stages to be computed in parallel despite dependences among them. The correctness and the performance of the algorithm relies on rank convergence properties of matrix multiplication in the tropical semiring, formed with plus as the multiplicative operation and max as the additive operation. This paper demonstrates the efficiency of the parallel algorithm by showing significant speed ups on a variety of important dynamic programming problems. In particular, the parallel Viterbi decoder is up-to 24x faster (with 64 processors) than a highly optimized commercial baseline.