Software Support for Virtual Memory-Mapped Communication
Abstract:
Virtual memory-mapped communication (VMMC) is a communication model
providing direct data transfer between the sender's and receiver's
virtual address spaces. This model eliminates operating system
involvement in communication, provides full protection, supports
user-level buffer management and zero-copy protocols, and minimizes
software communication overhead. This paper describes system software
support for the model including its API, operating system support, and
software architecture, for two network interfaces designed in the
SHRIMP project. Our implementations and experiments show that the VMMC
model can indeed expose the availabel hardware performance to user
programs. On two Pentium PCs with our prototype network interface
hardware over a network, we have achieved user-to-user latency of 4.8
mu sec and sustained bandwidth of 23 MB/s, which is close to the peak
hardware bandwidth. Software communication overhead is only a few
user-level instructions.This technical report has been published as
- Software Support for Virtual Memory Mapped Communication.
Cezary Dubnicki, Liviu Iftode, Edward W. Felten, and Kai Li,
Internat. Parallel Processing Symposium, April 1996.