Midway : shared memory parallel programming with entry consistency for distributed memory multiprocessors
journal contributionposted on 01.05.2005, 00:00 by Brian N. Bershad, Matthew J. Zekauskas
Abstract: "Distributed memory multiprocessing offers a cost- effective and scalable solution for a large class of scientific and numeric applications. Unfortunately, the performance of current distributed memory programming environments suffers because the frequency of communication between processors can exceed that required to ensure a correctly functioning program. Midway is a shared memory parallel programming system which addresses the problem of excessive communication in a distributed memory multiprocessor. Midway programs are written using a conventional MIMD-style programming model executing within a single globally shared memory.Local memories on each processor cache recently used data to counter the effects of network latency. MIDWAY is based on [sic] new model of memory consistency called entry consistency. Entry consistency exploits the relationship between synchronization objects and the data which they protect. Updates to shared data are communicated between processors only when not doing so would result in an inconsistent state given a properly synchronizing program. Midway implements its inconsistency protocols in software, and has no dependencies on any specific hardware characteristic other than the ability to send messages between processors.A strictly software solution is attractive because it allows us to exploit application specific information at the lowest levels of the system, and because it ensures portability across a wide range of multiprocessor architectures."