A dynamic distributed load balancing algorithm with provable good performance

The overall efficiency of parallel algorithms is most decisively effected by the strategy applied for the mapping of workload. Strategies for balancing dynamically generated workload on a processor network which are also useful for practical applications have intensively been investigated by simulations and by direct applications. This paper presents the complete theoretical analysis of a dynamically distributed load balancing strategy. The algorithm is adaptive by nature and is therefore useful for a broad range of applications. A similar algorithmic principle has already been implemented for a number of applications in the areas of combinatorial optimization, parallel programming languages and graphical animation. The algorithm performed convincingly for all these applications. In our analysis we will prove that the expected number of packets on each processor varies only by a constant factor compared with that on any other processor, independent of the generation and consumption of workload on each processor. We give exact bounds for these vahtes and prove an exact upper bound, independent of the number of proce% sors. Thus, the algorithm achieves a well-balanced workload distribution on any network for any underlying application. We also prove that the variation of the expected number of packets on a processor is very small and only dependent on the parameters of the algorithm. Furthermore, we present some analysis of the costs of our algorithm. We will also show that all tradeoffs between balancing quality, variation and costs can be determined by the parameters of the algorithm. “ This work wss partly supported by the German Department of Science and Technology (BMFT), PARAWAN project 41=sS39-ITR 9007 BO and the DFG Forschergruppe ‘EfTiziente Nutzung msssiv paralleled Systeme” Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and its date appear, and notice is given that copying is by permission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/or specific permission. ACM-SPAA’93-6/93 /Velen,Germany. @ 1993 ACM 0.89791.599-2/93/0006/01 64...$1.50

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

[2]  Jin-Yi Cai,et al.  Take a walk, grow a tree , 1988, [Proceedings 1988] 29th Annual Symposium on Foundations of Computer Science.

[3]  Robert M. Keller,et al.  The Gradient Model Load Balancing Method , 1987, IEEE Transactions on Software Engineering.

[4]  .. G. Plaxton Load Balancing , Selection and Sorting on the HypercubeC , 1989 .

[5]  Uwe Glässer A distributed implementation of flat concurrent prolog on message passing multiprocessor systems , 1993 .

[6]  Reinhard Lüling,et al.  Load balancing in large networks: a comparative study , 1991, Proceedings of the Third IEEE Symposium on Parallel and Distributed Processing.

[7]  Amos Fiat,et al.  On-line load balancing with applications to machine scheduling and virtual circuit routing , 1993, STOC.

[8]  Eli Upfal,et al.  A simple load balancing scheme for task allocation in parallel machines , 1991, SPAA '91.

[9]  Burkhard Monien,et al.  Embedding one interconnection network in another , 1990 .

[10]  John A. Stankovic,et al.  An Adaptive Bidding Algorithm For Processes, Clusters and Distributed Groups , 1984, ICDCS.

[11]  Steven J. Phillips,et al.  Online load balancing and network flow , 1993, STOC.

[12]  Reinhard Lüling,et al.  Load balancing for distributed branch & bound algorithms , 1992, Proceedings Sixth International Parallel Processing Symposium.