Tools for the Development of Application Specific Virtual Memory Management

Keith Krueger, Amin Vahdat, Thomas Anderson and David Loftesness

EECS Department
University of California, Berkeley
Technical Report No. UCB/CSD-93-740
April 1993

http://www2.eecs.berkeley.edu/Pubs/TechRpts/1993/CSD-93-740.pdf

The operating system's virtual memory management policy is increasingly important to application performance because gains in processing speed are far outstripping improvements in disk latency. Indeed, large applications can gain large performance benefits from using a virtual memory policy tuned to their specific memory access patterns rather than a general policy provided by the operating system. As a result, a number of schemes have been proposed to allow for application-specific extensions to virtual memory management. These schemes have the potential to improve performance; however, to realize this performance gain, application developers must implement their own virtual memory module, a non-trivial programming task.

Current operating systems and programming tools are inadequate for developing application-specific policies. Our work combines (i) an extensible user-level virtual memory system based on a metaobject protocol with (ii) an innovative graphical performance monitor to make the task of implementing a new application-specific page replacement policy considerably simpler. The techniques presented for opening up operating system virtual memory policy to user control are general; they could be used to build application-specific implementations of other operating system policies.


BibTeX citation:

@techreport{Krueger:CSD-93-740,
    Author = {Krueger, Keith and Vahdat, Amin and Anderson, Thomas and Loftesness, David},
    Title = {Tools for the Development of Application Specific Virtual Memory Management},
    Institution = {EECS Department, University of California, Berkeley},
    Year = {1993},
    Month = {Apr},
    URL = {http://www2.eecs.berkeley.edu/Pubs/TechRpts/1993/6021.html},
    Number = {UCB/CSD-93-740},
    Abstract = {The operating system's virtual memory management policy is increasingly important to application performance because gains in processing speed are far outstripping improvements in disk latency. Indeed, large applications can gain large performance benefits from using a virtual memory policy tuned to their specific memory access patterns rather than a general policy provided by the operating system. As a result, a number of schemes have been proposed to allow for application-specific extensions to virtual memory management. These schemes have the potential to improve performance; however, to realize this performance gain, application developers must implement their own virtual memory module, a non-trivial programming task. <p>Current operating systems and programming tools are inadequate for developing application-specific policies. Our work combines (i) an extensible user-level virtual memory system based on a metaobject protocol with (ii) an innovative graphical performance monitor to make the task of implementing a new application-specific page replacement policy considerably simpler. The techniques presented for opening up operating system virtual memory policy to user control are general; they could be used to build application-specific implementations of other operating system policies.}
}

EndNote citation:

%0 Report
%A Krueger, Keith
%A Vahdat, Amin
%A Anderson, Thomas
%A Loftesness, David
%T Tools for the Development of Application Specific Virtual Memory Management
%I EECS Department, University of California, Berkeley
%D 1993
%@ UCB/CSD-93-740
%U http://www2.eecs.berkeley.edu/Pubs/TechRpts/1993/6021.html
%F Krueger:CSD-93-740