Distributed Shared Memory and Memory Objects

Distributed Shared Memory and Memory Objects

Distributed shared memories (DSM) allow processes to share memory objects even when they execute in environments such as workstation cluster where shared memory is not provided by the the hardware. We have implemented Indigo, a user-level library which can be used to implement several types of distributed memory systems. We have already implemented a DSM that exploits weak consistency and synchronization information to provide high performance memory objects.

Processes executing in a workstation cluster environment can share memory by using memory objects which can be read and written at multiple nodes. Such memory objects were constructed on top of the Indigo system that has been implemented by us. We have redesigned Indigo to exploit faster ATM based communication support and have also addressed several other problems of the current design such as use of separate processes as daemons. The new system is currently being implemented and will be integrated with the OTL discussed previously.

We have also designed and implementation of a new algorithm to handle false sharing(FS) in object based DSM systems(with Prince Kohli). As object based DSM systems allow user-defined objects, FS is not the common case. We have developed an algorithm which eliminates the overhead of handling FS when it is not present while correctly handling the cases in which FS occurs.



Greg Eisenhauer
Mon Apr 15 10:42:03 EDT 1996