Rapid Convergence of a Local Load Balancing Algorithm for Asynchronous Rings

We consider the problem of load balancing in a ring network. We present an analysis of the following local algorithm. In each step, each node of the ring examines the number of tokens at its clockwise neighbor and sends a token to the neighbor if the neighbor has fewer tokens. We show that in a synchronous model, for any initial token distribution b, the algorithm converges to a completely balanced distribution within 40PT(b) + n steps, where OPT(b) is the time taken by the optimal centralized algorithm to balance b completely. Our main result is an analysis of the algorithm in an asynchronous model in which local computations and messages may be arbitrarily delayed, subject to the constraint that each message is eventually delivered and each computation is eventually performed. By generalizing our analysis for the synchronous model, we show that for any initial token distribution b, the algorithm converges to a completely balanced distribution within 8OPT(b) + 2n rounds, where a round is a minimal sequence of steps in which every component of the network is scheduled at least once. We also show that for every initial token distribution, the message complexity of the algorithm is asymptotically optimal among all algorithms that move tokens in the clockwise direction.

[1]  John N. Tsitsiklis,et al.  Parallel and distributed computation , 1989 .

[2]  Bruce M. Maggs,et al.  Approximate load balancing on dynamic and asynchronous networks , 1993, STOC.

[3]  George Cybenko,et al.  Dynamic Load Balancing for Distributed Memory Multiprocessors , 1989, J. Parallel Distributed Comput..

[4]  Nancy A. Lynch,et al.  Distributed Computing: Models and Methods , 1990, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[5]  Baruch Awerbuch,et al.  Complexity of network synchronization , 1985, JACM.

[6]  Ernie Cohen The Convergence Span of Greedy Load Balancing , 1994, Inf. Process. Lett..

[7]  Nancy A. Lynch,et al.  On Describing the Behavior and Implementation of Distributed Systems , 1979, Theor. Comput. Sci..

[8]  Edward D. Lazowska,et al.  Adaptive load sharing in homogeneous distributed systems , 1986, IEEE Transactions on Software Engineering.

[9]  F. Leighton,et al.  Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes , 1991 .

[10]  Bruce M. Maggs,et al.  Tight analyses of two local load balancing algorithms , 1995, STOC '95.

[11]  Roy D. Williams,et al.  Performance of dynamic load balancing algorithms for unstructured mesh calculations , 1991, Concurr. Pract. Exp..

[12]  Eli Upfal,et al.  The Generalized Packet Routing Problem , 1987, Theor. Comput. Sci..

[13]  Nancy A. Lynch,et al.  Electing a leader in a synchronous ring , 1987, JACM.

[14]  C. Greg Plaxton Load balancing, selection sorting on the hypercube , 1989, SPAA '89.

[15]  Anish Arora,et al.  Load Balancing: An Exercise in Constrainted Convergence , 1995, WDAG.

[16]  David R. Karger,et al.  Job scheduling in rings , 1994, SPAA '94.

[17]  Lenore Cowen,et al.  Efficient asynchronous distributed symmetry breaking , 1994, STOC '94.

[18]  D. Hutchinson Local Area Network Architectures , 1988 .

[19]  Eli Upfal,et al.  The token distribution problem , 1989, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[20]  A. Heirich,et al.  A Parabolic Theory of Load Balance , 1993 .

[21]  Asser N. Tantawi,et al.  Optimal static load balancing in distributed computer systems , 1985, JACM.

[22]  Nancy A. Lynch,et al.  Efficiency of Synchronous Versus Asynchronous Distributed Systems , 1983, J. ACM.

[23]  Xiaotie Deng,et al.  Competitive Analysis of Network Load Balancing , 1997, J. Parallel Distributed Comput..