Massively Parallel Algorithms for Approximate Shortest Paths
We present fast algorithms for approximate shortest paths in the massively parallel computation (MPC) model. We provide randomized algorithms that take rounds in the near-linear memory MPC model. Our results are for unweighted undirected graphs with vertices and edges. Our first contribution is a -approximation algorithm for Single-Source Shortest Paths (SSSP) that takes rounds in the near-linear MPC model, where the memory per machine is and the total memory is , where is a small constant. Our second contribution is a distance oracle that allows to approximate the distance between any pair of vertices. The distance oracle is constructed in rounds and allows to query a -approximate distance between any pair of vertices and in additional rounds. The algorithm is for the near-linear memory MPC model with total memory of size , where is a small constant. While our algorithms are for the near-linear MPC model, in fact they only use one machine with memory, where the rest of machines can have sublinear memory of size for a small constant . All previous algorithms for approximate shortest paths in the near-linear MPC model either required rounds or had an approximation. Our approach is based on fast construction of near-additive emulators, limited-scale hopsets and limited-scale distance sketches that are tailored for the MPC model. While our end-results are for the near-linear MPC model, many of the tools we construct such as hopsets and emulators are constructed in the more restricted sublinear MPC model.
View on arXiv