The design of the UNIX operating system
The design of the UNIX operating system
Memory coherence in shared virtual memory systems
PODC '86 Proceedings of the fifth annual ACM symposium on Principles of distributed computing
Distributed system V IPC in LOCUS: a design and implementation retrospective
SIGCOMM '86 Proceedings of the ACM SIGCOMM conference on Communications architectures & protocols
Architectural support for multilanguage parallel programming on heterogeneous systems
ASPLOS II Proceedings of the second international conference on Architectual support for programming languages and operating systems
Caching in the Sprite network file system
ACM Transactions on Computer Systems (TOCS)
The Sprite Network Operating System
Computer
Memory-reference characteristics of multiprocessor applications under MACH
SIGMETRICS '88 Proceedings of the 1988 ACM SIGMETRICS conference on Measurement and modeling of computer systems
Leases: an efficient fault-tolerant mechanism for distributed file cache consistency
SOSP '89 Proceedings of the twelfth ACM symposium on Operating systems principles
ACM Computing Surveys (CSUR)
Ethernet: distributed packet switching for local computer networks
Communications of the ACM
Virtual memory, processes, and sharing in MULTICS
Communications of the ACM
System V Interface Definition
LOCUS a network transparent, high reliability distributed system
SOSP '81 Proceedings of the eighth ACM symposium on Operating systems principles
The LOCUS distributed operating system
SOSP '83 Proceedings of the ninth ACM symposium on Operating systems principles
Distributed shared memory in a loosely-coupled environment
Distributed shared memory in a loosely-coupled environment
Leases: an efficient fault-tolerant mechanism for distributed file cache consistency
SOSP '89 Proceedings of the twelfth ACM symposium on Operating systems principles
Distributed Shared Memory: A Survey of Issues and Algorithms
Computer - Distributed computing systems: separate resources acting as one
Implementation and performance of Munin
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
Experiences in integrating distributed shared memory with virtual memory management
ACM SIGOPS Operating Systems Review
Distributed computing in a NUMP (Non-Uniform Message-Passing) environment
ACM SIGOPS Operating Systems Review
Techniques for reducing consistency-related communication in distributed shared-memory systems
ACM Transactions on Computer Systems (TOCS)
A comprehensive bibliography of distributed shared memory
ACM SIGOPS Operating Systems Review
A compiler-directed distributed shared memory system
ICS '95 Proceedings of the 9th international conference on Supercomputing
IEEE Transactions on Parallel and Distributed Systems
Execution analysis of DSM applications: a distributed and scalable approach
SPDT '96 Proceedings of the SIGMETRICS symposium on Parallel and distributed tools
Performance evaluation of the Orca shared-object system
ACM Transactions on Computer Systems (TOCS)
ACM Computing Surveys (CSUR)
View-based consistency and false sharing effect in distributed shared memory
ACM SIGOPS Operating Systems Review
Orca: a language for distributed programming
ACM SIGPLAN Notices
Fault-tolerance support in distributed systems
EW 4 Proceedings of the 4th workshop on ACM SIGOPS European workshop
Improving the performance of DSM systems via compiler involvement
Proceedings of the 1994 ACM/IEEE conference on Supercomputing
Distributed Shared Memory: Concepts and Systems
IEEE Parallel & Distributed Technology: Systems & Technology
Heterogeneous Distributed Shared Memory
IEEE Transactions on Parallel and Distributed Systems
Paging in a distributed virtual memory
Trends in functional programming
An Open Distributed Shared Memory System
HPCN Europe 2001 Proceedings of the 9th International Conference on High-Performance Computing and Networking
A case for virtual distributed objects
Virtual shared memory for distributed architectures
PAS '95 Proceedings of the First Aizu International Symposium on Parallel Algorithms/Architecture Synthesis
Locality and Performance of Page- and Object-Based DSMs
IPPS '98 Proceedings of the 12th. International Parallel Processing Symposium on International Parallel Processing Symposium
ICPP '94 Proceedings of the 1994 International Conference on Parallel Processing - Volume 01
Distributed filaments: efficient fine-grain parallelism on a cluster of workstations
OSDI '94 Proceedings of the 1st USENIX conference on Operating Systems Design and Implementation
A distributed shared memory facility for FreeBSD
ATEC '97 Proceedings of the annual conference on USENIX Annual Technical Conference
An asymmetric distributed shared memory model for heterogeneous parallel systems
Proceedings of the fifteenth edition of ASPLOS on Architectural support for programming languages and operating systems
vNUMA: a virtual shared-memory multiprocessor
USENIX'09 Proceedings of the 2009 conference on USENIX Annual technical conference
Transactional cluster computing
HPCC'05 Proceedings of the First international conference on High Performance Computing and Communications
View-Oriented parallel programming and view-based consistency
PDCAT'04 Proceedings of the 5th international conference on Parallel and Distributed Computing: applications and Technologies
Reflex: using low-power processors in smartphones without knowing them
ASPLOS XVII Proceedings of the seventeenth international conference on Architectural Support for Programming Languages and Operating Systems
Hi-index | 0.00 |
Shared memory is an effective and efficient paradigm for interprocess communication. We are concerned with software that makes use of shared memory in a single site system and its extension to a multimachine environment. Here we describe the design of a distributed shared memory (DSM) system called Mirage developed at UCLA. Mirage provides a form of network transparency to make network boundaries invisible for shared memory and is upward compatible with an existing interface to shared memory. We present the rationale behind our design decisions and important details of the implementation. Mirage's basic performance is examined by component timings, a worst case application, and a “representative” application. In some instances of page contention, the tuning parameter in our design improves application throughput. In other cases, thrashing is reduced and overall system performance improved using our tuning parameter.