A cost-effective scheduling with load balancing for multiprocessor systems

Large-scale shared-memory multiprocessor systems are the current trend in high-performance multiprocessor systems, which are often divided into many nodes. These nodes contain a small number of processors connected by an internal bus. In this kind of system, load imbalance often occurs and can degrade the performance. This paper presents a cost-effective load balancing algorithm, which performs load redistribution only when the possible savings outweigh the redistribution costs. Furthermore, once the algorithm has decided to redistribute all of the iterations, some savings from those processors with heavy workloads can be migrated to some other processors with light workloads. Experiments show that our algorithm can enhance performance if it is used properly.

[1]  K. E. Gates,et al.  A Technical Description of Some Parallel Computers , 1994, Int. J. High Speed Comput..

[2]  D. M. Nicol,et al.  Communication efficient global load balancing , 1992, Proceedings Scalable High Performance Computing Conference SHPCC-92..

[3]  Jan F. Prins,et al.  Scan-directed load balancing for highly-parallel mesh-connected computers. Technical report , 1991 .

[4]  Michael Stumm,et al.  Hector-a hierarchically structured shared memory multiprocessor , 1991, Proceedings of the Twenty-Fourth Annual Hawaii International Conference on System Sciences.

[5]  Guy Lemieux,et al.  The NUMAchine multiprocessor , 2000, Proceedings 2000 International Conference on Parallel Processing.

[6]  David M. Nicol,et al.  Optimal Dynamic Remapping of Data Parallel Computations , 1990, IEEE Trans. Computers.

[7]  Daniel E. Lenoski,et al.  Scalable Shared-Memory Multiprocessing , 1995 .

[8]  David M. Nicol,et al.  Accurate modeling of parallel scientific computations , 1989, SIGMETRICS '89.