Consistent Distributed Storage


Book Description

Providing a shared memory abstraction in distributed systems is a powerful tool that can simplify the design and implementation of software systems for networked platforms. This enables the system designers to work with abstract readable and writable objects without the need to deal with the complexity and dynamism of the underlying platform. The key property of shared memory implementations is the consistency guarantee that it provides under concurrent access to the shared objects. The most intuitive memory consistency model is atomicity because of its equivalence with a memory system where accesses occur serially, one at a time. Emulations of shared atomic memory in distributed systems is an active area of research and development. The problem proves to be challenging, and especially so in distributed message passing settings with unreliable components, as is often the case in networked systems. We present several approaches to implementing shared memory services with the help of replication on top of message-passing distributed platforms subject to a variety of perturbations in the computing medium.




The Design and Implementation of Distributed Shared Memory Based on Scope Consistency


Book Description

Distributed Shared Memory (DSM) is one of the main approaches to implement distributed computing. The purpose of this project is to design and implement a prototype DSM that runs on popular TCP/IP networked Window PCs without special compliers and/or linkers. Our DSM uses lock based scope consistency (ScC), and supports central model, multiple server model and fully distributed model. We use object-oriented method to encapsulate these models within one framework. We provide C++ APIs and a DSM engine for C++ programmers to use DSM functions. The project is developed using C++ and Winsock APIs under Windows NT platform.




Distributed Shared Memory


Book Description

The papers present in this text survey both distributed shared memory (DSM) efforts and commercial DSM systems. The book discusses relevant issues that make the concept of DSM one of the most attractive approaches for building large-scale, high-performance multiprocessor systems. The authors provide a general introduction to the DSM field as well as a broad survey of the basic DSM concepts, mechanisms, design issues, and systems. The book concentrates on basic DSM algorithms, their enhancements, and their performance evaluation. In addition, it details implementations that employ DSM solutions at the software and the hardware level. This guide is a research and development reference that provides state-of-the art information that will be useful to architects, designers, and programmers of DSM systems.







Efficient and Scalable Distributed Shared Memory System


Book Description

This thesis presents the design and implementation of our novel hybrid software DSM system. We call our system hybrid home-based EAC (HHEAC) since the system implements our novel exclusive access consistency model (EAC) based on the hybrid protocol of the homeless and home-based protocols. HHEAC guarantees only that shared variables inside a critical section are up to date before the accesses. Other shared variables outside a critical section are guaranteed to be up to date after the next barrier synchronisation. Our home-based DSM implementation is different from the previous implementations in that a home node does not receive any diffs from non-home nodes until the next barrier synchronisation. It is also different in that during a lock synchronisation required diffs are prefetched before the critical section, which reduces not only data traffic but also page faults inside the critical section. We also present a diff integration technique that can further unnecessary data traffic during lock synchronisation. This technique is especially effective in reducing data traffic for migratory applications.