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(E_{wcc})$ and $O(S_{wcc} \cdot E_{wcc})$ times for SSSP and APSP problems, respectively, where $S_{wcc}$ and $E_{wcc}$ denote the number of nodes and 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.
翻译:暂无翻译