External-Memory Breadth-First Search with Sublinear I/O

Breadth-first search (BFS) is a basic graph exploration technique. We give the first external memory algorithm for sparse undirected graphs with sublinear I/O. The best previous algorithm requires ?(n + n+m/D?B ? logM/B n+m/B) I/Os on a graph with n nodes and m edges and a machine with main-memory of size M, D parallel disks, and block size B. We present a new approach which requires only O(?n?(n+m)/D?B + n+m/D?B ? logM/B n+m/B)I/Os. Hence, for m = O(n) and all realistic values of logM/B n+m/B, it improves upon the I/O-performance of the best previous algorithm by a factor ?(?D ? B). Our approach is fairly simple and we conjecture it to be practical. We also give improved algorithms for undirected single-source shortest-paths with small integer edge weights and for semi-external BFS on directed Eulerian graphs.

[1]  Mikhail J. Atallah,et al.  Finding Euler Tours in Parallel , 2011, J. Comput. Syst. Sci..

[2]  Suresh Venkatasubramanian,et al.  On external memory graph traversal , 2000, SODA '00.

[3]  Jeffrey Scott Vitter,et al.  I/O-Efficient Algorithms for Problems on Grid-Based Terrains , 2001, JEAL.

[4]  Kamesh Munagala,et al.  I/O-complexity of graph algorithms , 1999, SODA '99.

[5]  Lars Arge,et al.  On external-memory MST, SSSP and multi-way planar graph separation , 2000, J. Algorithms.

[6]  Norbert Zeh,et al.  I/O-optimal algorithms for planar graphs using separators , 2002, SODA '02.

[7]  Edward F. Grove,et al.  External-memory graph algorithms , 1995, SODA '95.

[8]  Norbert Zeh,et al.  I/O-Efficient Algorithms for Graphs of Bounded Treewidth , 2001, SODA '01.

[9]  Jeffrey Scott Vitter,et al.  Greed sort: optimal deterministic sorting on parallel disks , 1995, JACM.

[10]  Vijay Kumar,et al.  Improved algorithms and data structures for solving graph problems in external memory , 1996, Proceedings of SPDP '96: 8th IEEE Symposium on Parallel and Distributed Processing.

[11]  Alok Aggarwal,et al.  The input/output complexity of sorting and related problems , 1988, CACM.

[12]  Ulrich Meyer,et al.  On External-Memory Planar Depth First Search , 2001, J. Graph Algorithms Appl..

[13]  Jeffery R. Westbrook,et al.  A Functional Approach to External Graph Algorithms , 1998, ESA.

[14]  Norbert Zeh,et al.  External Memory Algorithms for Outerplanar Graphs , 1999, ISAAC.

[15]  Ulrich Meyer External memory BFS on undirected graphs with bounded degree , 2001, SODA '01.