Tiling Dynamic Programming Computations to Maximize Parallelism

The Longest Common Subsequence (LCS) problem is fundamental in bioinformatics and file difference comparison algorithms, yet its conventional dynamic programming (DP) approach has a time complexity of \mathcal{O}(m n) , making it computationally expensive for large-scale inputs. Parallelization offe...

Celý popis

Uložené v:
Podrobná bibliografia
Vydané v:2025 IEEE International Conference on High Performance Computing and Communications (HPCC) s. 456 - 463
Hlavní autori: Sun, YanTao, Wang, Miaomiao, Guan, Jian, Li, Lin, Wang, Li, Liu, Guanjun
Médium: Konferenčný príspevok..
Jazyk:English
Vydavateľské údaje: IEEE 13.08.2025
Predmet:
On-line prístup:Získať plný text
Tagy: Pridať tag
Žiadne tagy, Buďte prvý, kto otaguje tento záznam!
Popis
Shrnutí:The Longest Common Subsequence (LCS) problem is fundamental in bioinformatics and file difference comparison algorithms, yet its conventional dynamic programming (DP) approach has a time complexity of \mathcal{O}(m n) , making it computationally expensive for large-scale inputs. Parallelization offers a promising solution to accelerate the LCS computation. Existing methods parallelize its computation along the antidiagonal direction of the DP matrix but suffer from poor cache utilization and high communication overhead. In this paper, we propose a novel parallel LCS algorithm that combines antidiagonal tiling with lightweight semaphore-based synchronization to enhance cache locality and reduce inter-thread communication costs. Our approach partitions the DP matrix into localized tiles along anti-diagonals and employs lightweight semaphores to guarantee dependency constraints, significantly improving the computation efficiency. Experimental results on sequences of length \mathbf{1 0 k} demonstrate that our algorithm achieves a 6.9 \times speedup ratio over the serial version, outperforming both well-known anti-diagonal parallelization method and task-queue-based method.
DOI:10.1109/HPCC67675.2025.00077