Efficient stepping algorithms and implementations for parallel shortest paths

32Citations
Citations of this article
10Readers
Mendeley users who have this article in their library.
Get full text

Abstract

The single-source shortest-path (SSSP) problem is a notoriously hard problem in the parallel context. In practice, the -stepping algorithm of Meyer and Sanders has been widely adopted. However, -stepping has no known worst-case bounds for general graphs, and the performance highly relies on the parameter , which requires exhaustive tuning. The parallel SSSP algorithms with provable bounds, such as Radius-stepping, either have no implementations available or are much slower than -stepping in practice. We propose the stepping algorithm framework that generalizes existing algorithms such as -stepping and Radius-stepping. The framework allows for similar analysis and implementations for all stepping algorithms. We also propose a new abstract data type, lazy-batched priority queue (LaB-PQ ) that abstracts the semantics of the priority queue needed by the stepping algorithms. We provide two data structures for LaB-PQ, focusing on theoretical and practical efficiency, respectively. Based on the new framework and LaB-PQ, we show two new stepping algorithms, ρ-stepping and ^∗-stepping, that are simple, with non-trivial worst-case bounds, and fast in practice. We also show improved bounds for a list of existing algorithms such as Radius-Stepping. Based on our framework, we implement three algorithms: Bellman-Ford, ∗-stepping, and ρ-stepping. We compare the performance with four state-of-the-art implementations. On five social and web graphs, ρ-stepping is 1.3 - 2.6x faster than all the existing implementations. On two road graphs, our ^∗-stepping is at least 14% faster than existing ones, while ρ-stepping is also competitive. The almost identical implementations for stepping algorithms also allow for in-depth analyses among the stepping algorithms in practice.

Cite

CITATION STYLE

APA

Dong, X., Gu, Y., Sun, Y., & Zhang, Y. (2021). Efficient stepping algorithms and implementations for parallel shortest paths. In Annual ACM Symposium on Parallelism in Algorithms and Architectures (pp. 184–197). Association for Computing Machinery. https://doi.org/10.1145/3409964.3461782

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free