Dynamic load balancing is a key problem for the efficient use of parallel systems when solving applications with unpredictable load estimates. However, depending on the underlying programming paradigm Single Program Multiple Data (SPMD) or Multiple Program Multiple Data (MPMD) the balancing requirements vary. In SPMD scenarios, a perfect load balance is desired, whereas in MPMD scenarios it might be better to quickly obtain a large reduction in load imbalance in a short period of time. We propose extending the local domain of a given processor in the load-balancing algorithms to find a better scope for each paradigm. For that purpose, we present a generalised version of the Diffusion Algorithm Searching Unbalanced Domains (called ds-DASUD), which extends the local domain of each processor beyond its immediate neighbour. ds-DASUD belongs to the iterative distributed load-balancing (IDLB) class and, in its original formulation, operates in a diffusion scheme where a processor balances its load with all its immediate neighbours (ds=1). We evaluate this algorithm for the two programming paradigms varying the domain size. The evaluation was carried out using two simulators (load-balancing and network simulators) for a large set of load distributions that exhibit different degrees of initial workload unbalancing. These distributions were applied to torus and hypercube topologies, and the number of processors ranged from 8 to 128. From these experiments, we conclude that the 1-DASUD fits well for SPMD scenarios, whereas for MPMD 3-DASUD and ((d/2)+1)-DASUD for hypercube and torus topologies, respectively, obtain the best trade-off between the imbalance reduction (up to 85%) and the cost incurred in reaching it. © 2004 Inderscience Enterprises Ltd.
|Journal||International Journal of High Performance Computing and Networking|
|Publication status||Published - 1 Jan 2004|
- diffusive load balancing
- discrete load model
- parallel computing