The performance model of SilkRoad - a multithreaded DSM system for clusters

Distributed Shared Memory (DSM) is a highly desirable programming model for cluster based computing. Even though a number of software DSMs have been developed with their performance evaluated, few of them have a theoretical performance model. In this paper, we propose and analyze the performance model of the software DSM of SilkRoad,, a multithreaded runtime system for cluster computing. SilkRoad is built on the Cilk system with an extended memory consistency model which we call RC/sub dag/ consistency: Extending Cilk's theoretical performance model, we show that with the RC/sub dag/ consistent DSM, the expected execution.time T/sub P/ of a partially strict multithreaded computation on P processors is O((T/sub 1/(Z, L) + N)/P + /spl mu/HT/sub /spl infin//), where T/sub 1/(Z, L) is the total work of computation, T/sub /spl infin// is the critical path, N is the number of lock acquisitions, /spl mu/ is the service time of a cache miss, and H is the height of memory: Finally, we present experimental evidence that verify the performance model.

[1]  Robert D. Blumofe,et al.  Scheduling multithreaded computations by work stealing , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

[2]  Matteo Frigo,et al.  DAG-consistent distributed shared memory , 1996, Proceedings of International Conference on Parallel Processing.

[3]  Matteo Frigo,et al.  An analysis of dag-consistent distributed shared-memory algorithms , 1996, SPAA '96.

[4]  Keith H. Randall,et al.  Cilk: efficient multithreaded computing , 1998 .

[5]  Matteo Frigo,et al.  Portable high-performance programs , 1999 .

[6]  Matteo Frigo,et al.  The implementation of the Cilk-5 multithreaded language , 1998, PLDI.

[7]  Victor Luchangco,et al.  Computation-centric memory models , 1998, SPAA '98.

[8]  P. Keleher,et al.  Lazy release consistency for distributed shared memory , 1996 .

[9]  Weng-Fai Wong,et al.  SilkRoad: a multithreaded runtime system with software distributed shared memory for SMP clusters , 2000, Proceedings IEEE International Conference on Cluster Computing. CLUSTER 2000.

[10]  Donald Yeung The scalability of multigrain systems , 1999, ICS '99.

[11]  A. Agarwal,et al.  MGS: A Multigrain Shared Memory System , 1996, 23rd Annual International Symposium on Computer Architecture (ISCA'96).

[12]  Weng-Fai Wong,et al.  SilkRoad II: a multi-paradigm runtime system for cluster computing , 2002, Proceedings. IEEE International Conference on Cluster Computing.

[13]  Angelos Bilas,et al.  Improving the performance of shared virtual memory on system area networks , 1998 .

[14]  Guy E. Blelloch,et al.  Space-efficient scheduling of parallelism with synchronization variables , 1997, SPAA '97.