UBC Theses and Dissertations

UBC Theses Logo

UBC Theses and Dissertations

Flexible application-directed virtual memory management for data-intensive applications and heterogeneous hardware Jalalian, Sepehr

Abstract

For over forty years, researchers have demonstrated that operating system memory managers often fall short for memory-hungry applications. The problem is even more critical today, with disaggregated memory and new memory technologies and in the presence of tera-scale machine learning models, large-scale graph processing, and other memory-intensive applications. Past attempts to provide application-specific memory management either require significant in-kernel changes or suffer from high overhead. We present ExtMem, a flexible framework for providing application-specific memory management. It differs from prior solutions in three ways: (1) It is compatible with today’s Linux deployments, (2) it is a general-purpose substrate for addressing various memory and storage backends, and (3) it is performant in multithreaded environments. Before presenting ExtMem, we study the Linux paging system, identifying its needs and challenges, and provide our insight in design. ExtMem allows for easy and rapid prototyping of new memory management algorithms, easy collection of memory patterns and statistics, and immediate deployment of isolated custom memory management. Our work demonstrates a new path for faster and more insightful memory management research in the future.

Item Media

Item Citations and Data

Rights

Attribution-NonCommercial-NoDerivatives 4.0 International