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ženo v:
Podrobná bibliografie
Vydáno v:2025 IEEE International Conference on High Performance Computing and Communications (HPCC) s. 456 - 463
Hlavní autoři: Sun, YanTao, Wang, Miaomiao, Guan, Jian, Li, Lin, Wang, Li, Liu, Guanjun
Médium: Konferenční příspěvek
Jazyk:angličtina
Vydáno: IEEE 13.08.2025
Témata:
On-line přístup:Získat plný text
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
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