Distributed shared memory based on offloading to cluster network

Distributed shared memory (DSM) is an important technology that provides programmers the underlying execution mechanism for shared memory programs. To improve the performance of DSM, recent studies have been carried out with introducing compiler assistance. The compiler generates codes for dependency analysis and communication. This paper proposes high-performance DSM, called Offloaded-DSM, in which the processes of dependency analysis and communication are offloaded to the cluster network. In Offloaded-DSM, the host machine can concentrate on computation of an application itself, while the network maintains coherency in parallel. Through the results of preliminary evaluation, Offloaded-DSM reduces execution time up to 32% in eight nodes and exhibits good scalability.

[1]  Masaaki Ono,et al.  Architecture and Performance of Dynamic Offloading Mechanism for Maestro2 Cluster Network , 2007 .

[2]  David K. Lowenthal,et al.  An Integrated Compiler/Run-Time System for Global Data Distribution in Distributed Shared Memory Systems∗ , 2002 .

[3]  Koichi Wada,et al.  Quaver: OpenMP Compiler for Clusters based on Array Section Descriptor , 2005, Parallel and Distributed Computing and Networks.

[4]  M. Ono,et al.  An Architecture and Performance of Maestro3 Cluster Network , 2007, 2007 IEEE Pacific Rim Conference on Communications, Computers and Signal Processing.

[5]  Rudolf Eigenmann,et al.  Programming Distributed Memory Sytems Using OpenMP , 2007, 2007 IEEE International Parallel and Distributed Processing Symposium.

[6]  R. Govindarajan,et al.  CAS-DSM: A Compiler Assisted Software Distributed Shared Memory , 2004, International Journal of Parallel Programming.