``A Comprehensive Bibliography of Distributed Shared Memory'' by Eskicioglu (U. of New Orleans). Operating Systems Review. 1995.
``Distributed Shared Memory: Concepts and Systems'' by Protic, Tomasevic
and Milutinovic (U. of Belgrade). IEEE Parallel & Distributed Technology. Summer 1996.
Slides:
http://www.cs.wpi.edu/~cs535/s03/proticslides/proticslides.html
``OpenMP on Networks of Workstations'' by Lu, Hu and Zwaenepoel (Rice U). Proceedings of SuperComputing November 1998.
Look at using DSM in a network of workstations (NOWs). Use OpenMP API
(http://www.openmp.org) as a basis to build programs using DSM
through a standard API.
Build on previous Treadmarks DSM.
OpenMP API for Fortran with parallel threads. Allow applications to be annotated to share parallelism. Focus is for multiprocessor.
Parallel directives
Variable types:
Synchronization directives:
Default of private is better for DSM than shared. Shared variables are more costly in DSM environment than multiprocessor environment.
Compiler for subset of OpenMP. Targets the Treadmarks software DSM system.
Treadmarks uses lazy invalidation of release consistency.
Figure 5 shows relative speedup for five applications using OpenMP implementation, hand-written Treadmarks implementation and MPI (both shared memory multiprocessor and distributed memory machines).
Extend to Networks of SMPs.
Looking at contention caused during the transition from sequential to parallel portions of code. Look at replicating the sequential portions across machines.