AURC and Beyond: Improving the Performance of Shared Virtual Memory

Graduate Students: Liviu Iftode,Angelos Bilas, Dongming Jiang , Rudro Samanta and Yuanyuan Zhou
Faculty: Kai Li and Jaswinder Pal Singh

Ten years after the Shared Virtual Memory (SVM) concept was introduced, there is still debate on its efficiency and limitations compared to expensive, hardware cache-coherent systems. A new trend in developing SVM systems has recently emerged. These systems support relaxed consistency protocols using low-latency commodity interconnects with various degree of custom hardware support for SVM. One such mechanism is Automatic Update. This is a simple memory-mapped communication mechanism supported by the SHRIMP network interface, in which local writes are forwarded to a remote node's memory in a transparent manner.

The goal of our research is to investigate how to build efficient shared virtual memory on PC and SMP-based clusters by leveraging simple hardware support, lazy protocols, consistency models, memory-mapped communication and application study. Our main research interests are represented by the following list of papers:

  1. A Lazy Release Consistency (LRC) based protocol called Automatic Update Release Consistency (AURC).
  2. A practical, further relaxed consistency model called Scope Consistency (ScC) .
  3. A comprehensive comparative study of application behavior and performance under AURC and all software LRC.
  4. Scalable SVM using home-based LRC (HLRC) protocols .
  5. Performance tradeoffs of relaxed consistency models and coherence granularity .
  6. SVM Protocols across SMPs .

The source code of the Home-based Release Consistency (HLRC) protocol on Windows NT 4.0 based on virtual memory-mapped comunication is available for non-commercial use. You can download the files from the SHRIMP homepage.

Here are some other research projects that support a coherent shared address space: TreadMarks , CASHMERe, Avalanche , FLASH , Wisconsin Wind Tunnel and Alewife .