Adapting workload distribution on software DSM clusters

Achieving an appropriate workload distribution is essential if user applications are to achieve a satisfactory performance on software distributed shared memory (SDSM) clusters. To address this problem, the present study develops a novel method for distributing program threads onto the individual computers of SDSM clusters. In contrast to alternative methods, the proposed approach takes account not only of processor speed and data‐sharing aspects, but also memory availability, such that application performance can be enhanced through the implementation of appropriate workload distributions. In addition, when distributing the program threads, the proposed method specifically chooses only those computers that can enhance the performance of the application, rather than simply distributing the threads to all the available nodes in the cluster. This location policy makes it possible to specify the appropriate node combinations that optimize program performance while simultaneously maximizing resource utilization. The proposed method is implemented on a testbed referred to as Teamster. The experimental results demonstrate that, compared to alternative methods, the proposed approach delivers a 20–30% improvement in the performance of the chosen test applications. Importantly, it is shown that the proposed method can efficiently specify proper node combinations for the applications. Copyright © 2006 John Wiley & Sons, Ltd.

[1]  Weisong Shi,et al.  Dynamic computation scheduling for load balancing in home-based software DSMs , 1999, Proceedings Fourth International Symposium on Parallel Architectures, Algorithms, and Networks (I-SPAN'99).

[2]  Su-Cheong Mac,et al.  Multi-Threaded Design for a Software Distributed Shared Memory System , 1999 .

[3]  Peter J. Keleher CVM: The Coherent Virtual Machine , 2004 .

[4]  Ce-Kuen Shieh,et al.  Load balancing in distributed shared memory systems , 1997, 1997 IEEE International Performance, Computing and Communications Conference.

[5]  Jeffrey K. Hollingsworth,et al.  Prediction and adaptation in Active Harmony , 1998, Proceedings. The Seventh International Symposium on High Performance Distributed Computing (Cat. No.98TB100244).

[6]  Mustaque Ahamad,et al.  Slow memory: weakening consistency to enhance concurrency in distributed shared memories , 1990, Proceedings.,10th International Conference on Distributed Computing Systems.

[7]  Gregory R. Andrews,et al.  Distributed filaments: efficient fine-grain parallelism on a cluster of workstations , 1994, OSDI '94.

[8]  Mark S. Squillante,et al.  Analysis of the Impact of Memory in Distributed Parallel Processing Systems , 1994, SIGMETRICS.

[9]  Ce-Kuen Shieh,et al.  Scheduling Loop Applications in Software Distributed Shared Memory Systems , 2000 .

[10]  Weisong Shi,et al.  JIAJIA: A Software DSM System Based on a New Cache Coherence Protocol , 1999, HPCN Europe.

[11]  R. Friedman,et al.  Load balancing in distributed shared memory systems , 1998 .

[12]  Roy Friedman,et al.  MILLIPEDE: Easy Parallel Programming in Available Distributed Environments , 1997, Softw. Pract. Exp..

[13]  Jyh-Biau Chang,et al.  Progressive multilayer reconfiguration for software DSM systems in non-dedicated clusters , 2005, 19th International Conference on Advanced Information Networking and Applications (AINA'05) Volume 1 (AINA papers).

[14]  Willy Zwaenepoel,et al.  Implementation and performance of Munin , 1991, SOSP '91.

[15]  Kai Li,et al.  IVY: A Shared Virtual Memory System for Parallel Computing , 1988, ICPP.

[16]  Alan L. Cox,et al.  TreadMarks: shared memory computing on networks of workstations , 1996 .

[17]  Brian N. Bershad,et al.  The Midway distributed shared memory system , 1993, Digest of Papers. Compcon Spring.

[18]  Peter J. Keleher,et al.  Thread migration and load balancing in non-dedicated environments , 2000, Proceedings 14th International Parallel and Distributed Processing Symposium. IPDPS 2000.

[19]  Peter J. Keleher,et al.  Thread migration and communication minimization in DSM systems , 1999 .

[20]  Jyh-Biau Chang,et al.  Teamster: a transparent distributed shared memory for cluster symmetric multiprocessors , 2001, Proceedings First IEEE/ACM International Symposium on Cluster Computing and the Grid.

[21]  Li Xiao,et al.  Dynamic Cluster Resource Allocations for Jobs with Known and Unknown Memory Demands , 2002, IEEE Trans. Parallel Distributed Syst..

[22]  Allen Gersho,et al.  Vector quantization and signal compression , 1991, The Kluwer international series in engineering and computer science.

[23]  Jyh-Biau Chang,et al.  A Transparent Distributed Shared Memory for Clustered Symmetric Multiprocessors , 2006, The Journal of Supercomputing.

[24]  Peter J. Keleher,et al.  Active correlation tracking , 1999, Proceedings. 19th IEEE International Conference on Distributed Computing Systems (Cat. No.99CB37003).

[25]  Ce-Kuen Shieh,et al.  Selecting threads for workload migration in software distributed shared memory systems , 2002, Parallel Comput..

[26]  John K. Bennett,et al.  Brazos: a third generation DSM system , 1997 .