| OCR Text |
Show 23 2.3 A demand-driven load balancing scheme In this study, we propose a decentralized load balancing model, termed gradient model, for general applicative systems. It will be clear later that the gradient model can be applied to other distributed systems as well. This section elaborates design ideas of the gradient model. A formal treatment of the model is presented in later sections. The gradient model is a localized load balancing method where every processor interacts solely with its immediate neighbors. A global balancing 'is achieved by a system-wide propagation of demands and successive refinement of the loading distribution. A demand is initiated only by an idle processor and then relayed through the system. A demand is stopped when an unprocessed task is available to fulfill the demand or when the system arrives at a stable state. Several design considerations are further explained below. 2.3.1 Dynamic balancing approach As discussed earlier, it is often difficult for a static load assignment function to correctly predict or extrapolate the system load distribution and make a fair assignment. It is further argued that an assignment function is effective only when a system is lightly loaded. As system load increases, more new tasks are waiting in each processor. An assignment function has to take more variables into consideration and consequently, is more .likely to cause uneven loading. One approach to avoid the load assignment problem is to "bypass the assignment function." This means that instead of trying to deliver a newly generated load to a conjectured less busy processor, the load is queued at the generating node and waits for some processor to request it. In other words, a dynamic load balancing method can be viewed as a multistage task assignment problem. The first stage is an identity function which allocates a new task to its generating processor. |