|M.Sc Student||Iosevich Vadim|
|Subject||Distributed Shared Memory: To Relax or not to Relax?|
|Department||Department of Computer Science||Supervisor||Professor Assaf Schuster|
A Distributed Shared Memory (DSM) system is a mechanism that provides a distributed application with a shared virtual address space. The efficiency of a DSM system relies mainly on a memory coherency protocol and an efficient communication layer. This work proposes a design for implementing the DSM communication layer on top of the Virtual Interface Architecture (VIA), an industry standard for user-level networking protocols on high-speed clusters. User-level communication protocols operate in a user mode, thus removing the operating system kernel's overhead from the critical communication pass and significantly diminishing communication overhead as a result. We analyze VIA's facilities and limitations in order to ascertain which implementation trade-offs can be best applied to our development of an efficient communication substrate optimized for DSM requirements.
We then implement a multithreaded version of the home-based lazy release consistency (HLRC) protocol on top of this substrate. Further, we compare the performance of the implemented HLRC protocol with the protocol that implements SC semantics using a MultiView memory mapping technique to enable a fine-grain access to shared memory still using the virtual memory hardware to track memory accesses. We perform an “apple-to-apple” comparison on the same testbed environment and benchmark suite and investigate the effectiveness and scalability of both these protocols.