A Case for Dynamic Page Migration in Multiple-Writer Software DSM Systems

Software DSMs (SDSMs) are an appealing alternative to message passing, since they facilitate the programmability of clusters. However the ease of programming comes at the expense of performance. Although accesses of data that reside to the memory of remote nodes are transparent to the programmer, they suffer from significantly higher latencies compared to local accesses. As a consequence, it is desirable to move data as close as possible to the nodes that need them most. In this paper we introduce a protocol for dynamically migrating memory pages in home-based SDSM systems. In these systems each page has a designated home node; yet our protocol allows a node that heavily modifies a page to become its new home. The new protocol targets multiple-writer DSMs, i.e. DSMs that allow multiple nodes to concurrently modify the same page. The process is dynamic and transparent to the applications programmer. Moreover, it does not assume a specific consistency protocol. Experimental results show that our page migration protocol reduces remote page modifications, decreases the average memory access latency, as well as the overhead for the preservation of memory consistency. The benefit for the end-user is a significant improvement in application performance

[1]  Kyu Ho Park,et al.  Moving home-based lazy release consistency for shared virtual memory systems , 1999, Proceedings of the 1999 International Conference on Parallel Processing.

[2]  Liviu Iftode,et al.  Home-based shared virtual memory , 1998 .

[3]  Weisong Shi,et al.  High Efficient Parallel Computation of Resonant Frequencies of Waveguide Loaded Cavities on JIAJIA Software DSMs , 1999, HPCN Europe.

[4]  Eduard Ayguadé,et al.  A case for user-level dynamic page migration , 2000, ICS '00.

[5]  Eduard Ayguadé,et al.  User-level dynamic page migration for multiprogrammed shared-memory multiprocessors , 2000, Proceedings 2000 International Conference on Parallel Processing.

[6]  Eduard Ayguadé,et al.  Running OpenMP applications efficiently on an everything-shared SDSM , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[7]  Eduard Ayguadé,et al.  Is Data Distribution Necessary in OpenMP? , 2000, ACM/IEEE SC 2000 Conference (SC'00).

[8]  Cho-Li Wang,et al.  A Migrating-Home Protocol for Implementing Scope Consistency Model on a Cluster of Workstations , 1999, PDPTA.

[9]  Alan L. Cox,et al.  An Evaluation of Software-Based Release Consistent Protocols , 1995, J. Parallel Distributed Comput..

[10]  Kai Li,et al.  IVY: A Shared Virtual Memory System for Parallel Computing , 1988, ICPP.

[11]  Tarek A. El-Ghazawi,et al.  UPC Performance and Potential: A NPB Experimental Study , 2002, ACM/IEEE SC 2002 Conference (SC'02).

[12]  Anoop Gupta,et al.  SPLASH: Stanford parallel applications for shared-memory , 1992, CARN.

[13]  Cho-Li Wang,et al.  A novel adaptive home migration protocol in home-based DSM , 2004, 2004 IEEE International Conference on Cluster Computing (IEEE Cat. No.04EX935).

[14]  Weisong Shi,et al.  Home Migration in Home-Based Software DSMs , 1999 .

[15]  Vana Kalogeraki,et al.  Dynamic page migration in software DSM systems , 2004, 2004 IEEE International Conference on Cluster Computing (IEEE Cat. No.04EX935).

[16]  Leslie Lamport,et al.  How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs , 2016, IEEE Transactions on Computers.

[17]  William Evan Speight,et al.  Utilizing home node prediction to improve the performance of software distributed shared memory , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[18]  Peter J. Keleher,et al.  Thread migration and communication minimization in DSM systems , 1999 .

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