The performance of message‐passing using restricted virtual memory remapping
- 1 March 1991
- journal article
- Published by Wiley in Software: Practice and Experience
- Vol. 21 (3) , 251-267
- https://doi.org/10.1002/spe.4380210303
Abstract
DASH is a distributed operating system kernel. Message‐passing (MP) is used for local communication, and the MP system uses virtual memory ( VM) remapping instead of software memory copying for moving large amounts of data between virtual address spaces. Remapping eliminates a potential communication bottleneck and may increase the feasibility of moving services such as file services to the user level. Previous systems that have used VM remapping for message transfer, however, have suffered from high per‐operation delay, limiting the use of the technique. The DASH design reduces this delay by restricting the generality of remapping: a fixed part of every space is reserved for remapping, and a page's virtual address does not change when it is moved between spaces.We measured the performance of the DASH kernel for Sun 3/50 workstations, on which memory can be copied at 3·9 MB/s. Using remapping, DASH can move large messages between user spaces at a rate of 39 MB/s if they are not referenced and 24·8 MB/s if each page is referenced. Furthermore, the per‐operation delay is low, so VM remapping is beneficial even for messages containing only one page. To further understand the performance of the DASH MP system, we broke an MP operation into short code segments and timed them with microsecond precision. The results show the relative costs of data movement and the other components of MP operations, and allow us to evaluate several specific design decisions.Keywords
This publication has 16 references indexed in Scilit:
- Amoeba: a distributed operating system for the 1990sComputer, 1990
- Broadband ISDN technology and architectureIEEE Network, 1989
- Recovery management in QuickSilverACM Transactions on Computer Systems, 1988
- User-process communication performance in networks of computersIEEE Transactions on Software Engineering, 1988
- Machine-independent virtual memory management for paged uniprocessor and multiprocessor architecturesIEEE Transactions on Computers, 1988
- The duality of memory and communication in the implementation of a multiprocessor operating systemACM SIGOPS Operating Systems Review, 1987
- Gaining efficiency in transport services by appropriate design and implementation choicesACM Transactions on Computer Systems, 1987
- The integration of virtual memory management and interprocess communication in AccentACM Transactions on Computer Systems, 1986
- AccentACM SIGOPS Operating Systems Review, 1981
- TENEX, a paged time sharing system for the PDP - 10Communications of the ACM, 1972