## Efficient Multi-GPU Algorithm for All-Pairs Shortest Paths

GENSCALE (INRIA – IRISA)

hal-00905738, 18 November 2013

@article{chapuis2013efficient,

title={Efficient Multi-GPU Algorithm for All-Pairs Shortest Paths},

author={Chapuis, Guillaume and Djidjev, Hristo and Andonov, Rumen and Thulasidasan, Sunil and Lavenier, Dominique and others},

year={2013}

}

The shortest-path problem is a fundamental computer science problem with applications in diverse areas such as transportation, robotics, network routing, and VLSI design. The problem is to find paths of minimum weight between pairs of nodes in edge-weighted graphs, where the weight of a path p is defined as the sum of the weights of all edges of p. The distance between two nodes v and w is defined as the minimum cost of a path between v and w. The objective of the all-pairs shortest path (APSP) problem is to compute the distances between all pairs of nodes of a graph. In this paper, we present a new approach to solving the APSP problem for planar graphs that exploits the massive on-chip parallelism available in today’s Graphics Processing Units (GPU). To harness this computing power for solving path problems in planar graphs, we exploit the community structure of input graphs and reformulate the problem in terms of matrix computations. Our algorithm, based on the Floyd-Warshall algorithm, has near quadratic complexity with respect to the number of nodes, while its matrix-based structure is regular enough to allow for efficient parallel implementation on the GPUs. By applying a divide-and-conquer approach, we are able to make use of multi-node GPU clusters, resulting in more than an order of magnitude speedup over fastest known Dijkstra-based GPU implementation and a two-fold speedup over a parallel Dijkstra-based CPU implementation.

November 26, 2013 by hgpu