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