The shortest paths problem is a fundamental challenge in graph theory, with a broad range of potential applications. However, traditional serial algorithms often struggle to adapt to large-scale graphs. To address this issue, researchers have explored parallel computing as a solution. The state-of-the-art shortest paths algorithm is the $\Delta$-stepping implementation, which significantly improves the parallelism of Dijkstra's algorithm. We propose a novel shortest paths algorithm achieving higher parallelism and scalability, which requires $O(m)$ and $O(E_{wcc})$ times on the connected and unconnected graphs for SSSP problems, respectively, where $E_{wcc}$ denote the number of edges included in the largest weakly connected component in graph. To evaluate the effectiveness of the novel algorithm, we tested it using real graph inputs from Stanford Network Analysis Platform and SuiteSparse Matrix Collection. Our algorithm outperformed the BFS (Breadth-First Search) and $\Delta$-stepping implementations from Gunrock from Gunrock, achieving a speedup of 1546.994$\times$ and 1432.145$\times$, respectively.
翻译:最短路径问题是图论中的一个基本挑战,具有广泛的应用前景。然而,传统串行算法往往难以适应大规模图。针对这一问题,研究人员探索了并行计算作为解决方案。当前最先进的最短路径算法是 $\Delta$-stepping 实现,它显著提升了 Dijkstra 算法的并行度。本文提出一种新型最短路径算法,具有更高的并行性和可扩展性,其针对SSSP问题在连通图和非连通图上的时间复杂度分别为 $O(m)$ 和 $O(E_{wcc})$,其中 $E_{wcc}$ 表示图中最大弱连通分量所包含的边数。为评估该新型算法的有效性,我们使用来自斯坦福网络分析平台和SuiteSparse矩阵集合的真实图输入进行了测试。该算法性能优于Gunrock中的BFS(广度优先搜索)和 $\Delta$-stepping 实现,分别实现了1546.994倍和1432.145倍的加速比。