An Evaluation of State Sharing Techniques in Distributed Operating Systems

A shared memory abstraction in distributed systems (DSM) provides ease of programming but could be costly to implement. Many protocols have been proposed recently that are based on diierent approaches for exploiting program semantics. We have implemented four diierent protocols that embody the diierent memory semantics and have evaluated them using applications that capture a wide range of state sharing patterns. Our main goal is to quantify the relative performance of these protocols with respect to representative applications. One of the results is that memory systems that provide weaker consistency or provide consistency only at well deened synchronization points (e.g., release consistency), cannot completely avoid the overhead associated with DSM. The disparity between the performance using these protocols and programmer controlled state sharing varied from being insigniicant to as high as 45% depending on application characteristics and system size. The use of synchronization information in conjunction with user directives will bridge this performance gap but may decrease the programming ease of DSM.

[1]  Richard E. Kessler,et al.  An analysis of distributed shared memory algorithms , 1989, [1989] Proceedings. The 9th International Conference on Distributed Computing Systems.

[2]  Brett D. Fleisch,et al.  Mirage: a coherent distributed shared memory design , 1989, SOSP '89.

[3]  Umakishore Ramachandran,et al.  Coherence of Distributed Shared Memory: Unifying Synchronization and Data Transfer , 1989, International Conference on Parallel Processing.

[4]  Henri E. Bal,et al.  Experience with distributed programming in Orca , 1990, Proceedings. 1990 International Conference on Computer Languages.

[5]  Willy Zwaenepoel,et al.  Munin: distributed shared memory based on type-specific memory coherence , 1990, PPOPP '90.

[6]  Paul Hudak,et al.  Memory coherence in shared virtual memory systems , 1986, PODC '86.

[7]  Henry M. Levy,et al.  Limits to low-latency communication on high-speed networks , 1993, TOCS.

[8]  Mark D. Hill,et al.  A Unified Formalization of Four Shared-Memory Models , 1993, IEEE Trans. Parallel Distributed Syst..

[9]  Alan L. Cox,et al.  Lazy release consistency for software distributed shared memory , 1992, ISCA '92.

[10]  Mustaque Ahamad,et al.  Evaluation of Causal Distributed Shared Memory for Data-race-free Programs , 1994 .

[11]  Brian N. Bershad,et al.  Midway : shared memory parallel programming with entry consistency for distributed memory multiprocessors , 1991 .

[12]  Leslie Lamport,et al.  Time, clocks, and the ordering of events in a distributed system , 1978, CACM.

[13]  André Schiper,et al.  Lightweight causal and atomic group multicast , 1991, TOCS.

[14]  R. Ananthanarayanan,et al.  Coherence, Synchronization and State-sharing in Distributed Shared-memory Applications , 1993, 1993 International Conference on Parallel Processing - ICPP'93.

[15]  Jeffrey S. Chase,et al.  The Amber system: parallel programming on a network of multiprocessors , 1989, SOSP '89.

[16]  Andrew P. Black,et al.  Fine-grained mobility in the Emerald system , 1987, TOCS.

[17]  Joonwon Lee,et al.  Architectural primitives for a scalable shared memory multiprocessor , 1991, SPAA '91.

[18]  Mustaque Ahamad,et al.  Implementing and programming causal distributed shared memory , 1991, [1991] Proceedings. 11th International Conference on Distributed Computing Systems.