Share on Facebook Tweet on Twitter Share on LinkedIn Share by email
PHAST: Hardware-Accelerated Shortest Path Trees

Daniel Delling, Andrew V. Goldberg, Andreas Nowatzyk, and Renato F. Werneck

Abstract

We present a novel algorithm to solve the nonnegative single-source shortest path problem on road networks and other graphs with low highway dimension. After a quick preprocessing phase, we can compute all distances from a given source in the graph with essentially a linear sweep over all vertices. Because this sweep is independent of the source, we are able to reorder vertices in advance to exploit locality. Moreover, our algorithm takes advantage of features of modern CPU architectures, such as SSE and multi-core. Compared to Dijkstra's algorithm, our method needs fewer operations, has better locality, and is better able to exploit parallelism at multi-core and instruction levels. We gain additional speedup when implementing our algorithm on a GPU, where our algorithm is up to three orders of magnitude faster than Dijkstra's algorithm on a high-end CPU. This makes applications based on all-pairs shortest-paths practical for continental-sized road networks. Several algorithms, such as computing the graph diameter, exact arc flags, or centrality measures (exact reaches or betweenness), can be greatly accelerated by our method.

Details

Publication typeInproceedings
Published in25th International Parallel and Distributed Processing Symposium (IPDPS'11)
PublisherIEEE
> Publications > PHAST: Hardware-Accelerated Shortest Path Trees