Reducing the Idle Time of Parallel Shortest Path

Shortest path computation is required by a large number of applications such as VLSI, transportation and communication networks. These applications, which are often very complex and have sparse networks, generally use parallel labeling shortest path algorithms. Such algorithms, when implemented on a distributed memory machine, require termination detection methods; these methods consist of some type of synchronization among all processors. Because global synchronization can be costly, it is assumed that the best termination detection methods synchronize as infrequently as possible. The frequency, however, can signiicantly impact the idle time of parallel labeling shortest path algorithms. In this paper we analyze the impact of this frequency on the performance, in particular the idle time, and identify when low versus high frequency detection is best. The analysis and results indicate that when the size of the subnetwork assigned to processor is small enough so that the computation time is less than or equal to the communication time within an iteration, high frequency termination detection methods should be used. Otherwise, low frequency methods should be used.

[1]  Edsger W. Dijkstra,et al.  A note on two problems in connexion with graphs , 1959, Numerische Mathematik.

[2]  B. Golden Shortest-Path Algorithms: A Comparison , 1975 .

[3]  Daniel Uri Friedman,et al.  Communication complexity of distributed shortest path algorithms , 1979 .

[4]  K. Mani Chandy,et al.  Distributed computation on graphs: shortest path algorithms , 1982, CACM.

[5]  A. J. M. van Gasteren,et al.  Derivation of a Termination Detection Algorithm for Distributed Computations , 1983, Inf. Process. Lett..

[6]  Clyde P. Kruskal,et al.  Parallel Algorithms for Shortest Path Problems , 1985, ICPP.

[7]  G. Gallo,et al.  SHORTEST PATH METHODS: A UNIFYING APPROACH , 1986 .

[8]  Shing-Tsaan Huang,et al.  A Fully Distributed Termination Detection Scheme , 1988, Inf. Process. Lett..

[9]  Jean-Pierre Prost,et al.  Synchronization and Load Unbalance Effects of Parallel Iterative Algorithms , 1989, ICPP.

[10]  Michel Dubois,et al.  Parallel asynchronous algorithms for discrete data , 1990, JACM.

[11]  Greg N. Frederickson A Distributed Shortest Path Algorithm for a Planar Network , 1990, Inf. Comput..

[12]  Vipin Kumar,et al.  Scalability of Parallel Algorithms for the All-Pairs Shortest-Path Problem , 1991, J. Parallel Distributed Comput..

[13]  S. Venkatesan,et al.  On Finding and Updating Shortest Paths Distributively , 1992, J. Algorithms.

[14]  Ravindra K. Ahuja,et al.  Network Flows: Theory, Algorithms, and Applications , 1993 .

[15]  Vittoria Gianuzzi,et al.  Distributed Termination Detection in Reducible Communication Graphs , 1994, Inf. Process. Lett..

[16]  Marios C. Papaefthymiou,et al.  Implementing parallel shortest-paths algorithms , 1994, Parallel Algorithms.

[17]  Haris N. Koutsopoulos,et al.  A Decomposition Algorithm for the All-Pairs Shortest Path Problem on Massively Parallel Computer Architectures , 1994, Transp. Sci..

[18]  Jesper Larsson Träff,et al.  An Experimental Comparison of two Distributed Single-Source Shortest Path Algorithms , 1995, Parallel Comput..

[19]  D. Bertsekas,et al.  Parallel asynchronous label-correcting methods for shortest paths , 1996 .

[20]  Michelle R. Hribar,et al.  Balancing load versus decreasing communication: exploring the tradeoffs , 1996, Proceedings of HICSS-29: 29th Hawaii International Conference on System Sciences.

[21]  Robert L. Smith,et al.  Parallel Algorithms for Solving Aggregated Shortest Path Problems ∗ , 1999 .