CBufs: efficient, system-wide memory management and sharing

Abstract

Modern systems are composed of many different protection domains separating privilege levels, subsystems, users, clients, and software of differing levels of assurance. System-wide memory management must consider not only allocation to single processes, but also efficient sharing of data across protection domains, and the allocation of memory based on the performance of applications that span multiple protection domains. This paper introduces the CBuf system for the global management of virtual and physical memory, including zero-copy sharing between protection domains. We present the design and implementation of both garbage collection techniques to enable efficient sharing, and policies that balance memory between protection domains specifically to satisfy system and application constraints such as quality of service. We show that a CBuf-enabled webserver achieves over a factor of 2.5 throughput speedup while using less processing time than Apache on Linux, and that the system can intentionally control system throughput through intelligent memory allocation.

Document Details

Document Type
Pub Defense Publication
Publication Date
Jun 14, 2016
Source ID
10.1145/3241624.2926703

Entities

People

  • Gabriel Parmer
  • Gedare Bloom
  • Teo Georgiev
  • Yuxin Ren

Organizations

  • George Washington University
  • Howard University
  • National Science Foundation
  • Office of Naval Research

Tags

Fields of Study

  • Computer science

Readers

  • Artificial Intelligence
  • Cybersecurity.
  • Parallel and Distributed Computing.