CSR: Small: Exploiting the Potential for Fine-Grained Memory Management via a Virtual Memory Framework Enhanced by Page Overlays
Carnegie Mellon University, Pittsburgh PA
Investigators
Abstract
Many areas of science and technology have experienced transformational changes in recent years as a result of computing on extremely large data sets. To help enable future breakthroughs in science and technology, we also need breakthroughs in the ability of computers to efficiently perform data-intensive computations. Perhaps one of the most important inventions in the history of operating systems and computer hardware was the creation of virtual memory support. Virtual memory support not only fulfilled its original motivation of giving the operating system the flexibility to manage the hardware memory resources in a way that is convenient for programmers, it also provided unexpected benefits, such as enabling the 'copy-on-write' mechanism that dramatically reduces the effective cost of duplicating large amounts of memory. While virtual memory is a powerful tool, it has one major shortcoming: it provides flexibility at only a relatively coarse granularity (e.g., 8KB "pages" of contiguous memory). This research is exploring how a new technique for eliminating this shortcoming can enable a number of new fundamental mechanisms for performing data-intensive computations much more efficiently. The key insight in this project is that through a modest extension of the hardware that supports virtual memory (called 'page overlays'), the benefits of virtual memory can be provided at a much finer granularity: e.g., 32B rather than 8KB. This orders-of-magnitude improvement in precision does not simply make existing virtual-memory-enabled optimizations more efficient: it enables fundamental new optimizations that had previously been impractical. For example, preliminary work has demonstrated that this new page overlays mechanism can dramatically improve the performance of the 'copy-on-write' optimization by enabling a new (much more efficient) 'overlay-on-write' mechanism. This project is exploring how page overlays can enable six additional fundamental new mechanisms for making data-intensive computations faster and more energy-efficient. With these six new mechanisms, future computer systems should be better suited to the increasingly data-intensive workloads of the future.
View original record on NSF Award Search →