Title :
SilkRoad: a multithreaded runtime system with software distributed shared memory for SMP clusters
Author :
Peng, L. ; Wong, W.F. ; Feng, M.D. ; Yuen, C.K.
Author_Institution :
Dept. of Comput. Sci., Nat. Univ. of Singapore, Singapore
Abstract :
Constructing multithreaded parallel systems with software distributed shared memory (DSM) is an attractive trend in cluster computing. Distributed Cilk (Cilk 5.1) is a multithreaded runtime system for SMP clusters with support for the divide-and-conquer programming paradigm. However, it lacks support for user-level shared memory. We describe SilkRoad, an extension of Distributed Cilk which implements the lazy release consistency (LRC) memory model. In the SilkRoad runtime system, system control information is kept consistent by means of a backing store, just as it is in the original Distributed Cilk, while the user´s cluster wide shared data is kept consistent by LRC. LRC enables SilkRoad programmers to define and use shared variables between the threads running on different nodes in a cluster This greatly enlarges the scope of supported programming paradigms in Cilk. Besides testing its performance, we also compared SilkRoad with TreadMarks, an LRC software DSM system for clusters with no support of multithreading. The results show that with the hybrid memory model of dag-consistency and LRC, multithreaded SilkRoad programs written in a divide-and-conquer fashion with good data locality can achieve comparable performance with the corresponding multiple-process TreadMarks programs
Keywords :
distributed shared memory systems; divide and conquer methods; multi-threading; software performance evaluation; workstation clusters; Distributed Cilk; SMP clusters; SilkRoad; TreadMarks; cluster computing; data locality; divide-and-conquer programming; lazy release consistency memory model; multithreaded parallel systems; multithreaded runtime system; multithreading; software distributed shared memory; user-level shared memory; Concurrent computing; Control systems; Distributed computing; Multithreading; Programming profession; Software performance; Software systems; Software testing; System testing; Yarn;
Conference_Titel :
Cluster Computing, 2000. Proceedings. IEEE International Conference on
Conference_Location :
Chemnitz
Print_ISBN :
0-7695-0896-0
DOI :
10.1109/CLUSTR.2000.889067