Munin: Distributed Shared Memory Based on
Type-Specific Memory Coherence
John K. Bennett*
John B. Carter
VVilly Zwaenepoer*
This paper proposed a loosely coherence memory model which is based on partial order specified by shared memory parallel programs, and it dynamiclly adjust the coherence mechanism for different objects. These mechanism allows programs written for shared memory system to execute on distributed memory system.
Shared memory system is easier to program as the programmer does not need to worry about the explicit movement and synchronization of data, while distributed memory model scales better. So the paper proposed a mechanism to combined both of the advantages. The runtime system maintains a shared unique memory space for the application, although the memory is physically distributed. The coherence is maintained in the runtime system transparent to the applications. The runtime system uses sematic hints from the programmers to determine the coherence mechanism for different objects. The extra complexity can be offset by the performance improvement.(???)
The paper study the data sharing pattern at the programming language level and decide a group of share memory access pattern that the majority of data use. These sharing patterns includ: Write-once, Private, Write many, Result, Synchronization, Migratory, Producer consumer, Read-mostly, and General read-write. Accordingly, the cohernece mechanisms that it uses are replication, migration, invalidation, and remote load/store. Mulin also proposes a new one: delayed update, similar to Rigel.
阅读(637) | 评论(0) | 转发(0) |