Parallel Shortest-Paths Using Radius Stepping
February 11, 2016 Β· Declared Dead Β· π ACM Symposium on Parallelism in Algorithms and Architectures
"No code URL or promise found in abstract"
Evidence collected by the PWNC Scanner
Authors
Guy E. Blelloch, Yan Gu, Yihan Sun, Kanat Tangwongsan
arXiv ID
1602.03881
Category
cs.DS: Data Structures & Algorithms
Citations
41
Venue
ACM Symposium on Parallelism in Algorithms and Architectures
Last Checked
3 months ago
Abstract
The single-source shortest path problem (SSSP) with nonnegative edge weights is a notoriously difficult problem to solve efficiently in parallel---it is one of the graph problems said to suffer from the transitive-closure bottleneck. In practice, the $Ξ$-stepping algorithm of Meyer and Sanders (J. Algorithms, 2003) often works efficiently but has no known theoretical bounds on general graphs. The algorithm takes a sequence of steps, each increasing the radius by a user-specified value $Ξ$. Each step settles the vertices in its annulus but can take $Ξ(n)$ substeps, each requiring $Ξ(m)$ work ($n$ vertices and $m$ edges). In this paper, we describe Radius-Stepping, an algorithm with the best-known tradeoff between work and depth bounds for SSSP with nearly-linear ($\otilde(m)$) work. The algorithm is a $Ξ$-stepping-like algorithm but uses a variable instead of fixed-size increase in radii, allowing us to prove a bound on the number of steps. In particular, by using what we define as a vertex $k$-radius, each step takes at most $k+2$ substeps. Furthermore, we define a $(k, Ο)$-graph property and show that if an undirected graph has this property, then the number of steps can be bounded by $O(\frac{n}Ο \log ΟL)$, for a total of $O(\frac{kn}Ο \log ΟL)$ substeps, each parallel. We describe how to preprocess a graph to have this property. Altogether, Radius-Stepping takes $O((m+n\log n)\log \frac{n}Ο)$ work and $O(\frac{n}Ο\log n \log (ΟL))$ depth per source after preprocessing. The preprocessing step can be done in $O(m\log n + nΟ^2)$ work and $O(Ο^2)$ depth or in $O(m\log n + nΟ^2\log n)$ work and $O(Ο\log Ο)$ depth, and adds no more than $O(nΟ)$ edges.
Community Contributions
Found the code? Know the venue? Think something is wrong? Let us know!
π Similar Papers
In the same crypt β Data Structures & Algorithms
π
π
The Cartographer
R.I.P.
π»
Ghosted
Route Planning in Transportation Networks
R.I.P.
π»
Ghosted
Near-linear time approximation algorithms for optimal transport via Sinkhorn iteration
R.I.P.
π»
Ghosted
Hierarchical Clustering: Objective Functions and Algorithms
R.I.P.
π»
Ghosted
Graph Isomorphism in Quasipolynomial Time
π
π
The Cartographer
Simulation optimization: A review of algorithms and applications
Died the same way β π» Ghosted
R.I.P.
π»
Ghosted
Federated Learning: Strategies for Improving Communication Efficiency
R.I.P.
π»
Ghosted
In-Datacenter Performance Analysis of a Tensor Processing Unit
R.I.P.
π»
Ghosted
Deep Convolutional Neural Networks for Computer-Aided Detection: CNN Architectures, Dataset Characteristics and Transfer Learning
R.I.P.
π»
Ghosted