Home

A Compiler-Directed Distributed Shared Memory System


Author(s) : Manish Verma Tzi-cker Chiueh, 
Publisher : N/A
Publication Date : 1995
ISSN : N/A
Abstract : With the advent of high-performance microprocessors and high-speed local area networks, networks of workstations (NOW) are now capable of delivering sustained computational performance comparable to that of a supercomputer. Distributed shared virtual memory (DSVM) offers a programming abstraction that hides the underlying networking details and thus greatly improves parallel programming productivity on a NOW environment. This paper describes the architecture and design of a novel DSVM system called Locust that can effectively take advantage of the data dependency information gathered at compile time to reduce performance overhead. Locust features a generation-based cache coherence scheme that greatly minimizes unnecessary coherence traffic. It supports object granularity cache coherence, thus eliminating the false sharing problem. In addition, Locust exploits data-dependency information to support producer-initiated data transfer and affinity scheduling. Finally, Locust provides a synchronization mechanism that reduces synchronization-induced network traffic to its minimum. Locust's underlying communication subsystem is an active messages like system. We discuss in detail how these mechanisms are integrated into Locust and present the initial implementation and some performance measurements of the communication subsystem.,