Mether-NFS: A Modified NFS Which Supports Virtual Shared Memory
Ronald G. Minnich
Supercomputing Research Center
Abstract
Mether-NFS (MNFS) is a modified NFS which supports virtual
shared memory. The model it supports is based on the Mether model.
It is compatible in most ways with standard NFS. The major difference
is in the way mapped files are handled. Mapped files, rather than adhering
to standard NFS memory consistency semantics instead obey rules such
that writes are globally ordered. This allows MNFS to be used to support
shared memory programs.
MNFS has been used on a 16-node SPARCStation ELC cluster to support
shared memory programs. On appropriate applications we have realized
supercomputer-level performance, which given the modest cost of the
cluster implies a correspondingly higher price-performance.
MNFS performance is superior to NFS performance in every case,
but particularly in the case of write performance. Writes in MNFS
are at least twice as fast as NFS.
MNFS provides an extended memory operator, called
Conditional Fetch-and-op (CFOP).
CFOP is used to support memory synchronization. Programs using CFOP
can atomically test and set a variable in 1.3
milliseconds. Our target performance
goal for CFOP is 500 microseconds.
In order to achieve this performance we have had to highly optimize
the path through the SunOS kernel on both the client and server sides.
Download the full text of this paper in
ASCII form (54,930 bytes).
To Become a USENIX Member, please see our
Membership Information.