Litcius/Paper detail

FluidMem: Full, Flexible, and Fast Memory Disaggregation for the Cloud

Blake Caldwell, Sepideh Goodarzy, Sangtae Ha, Richard Han, Eric Keller, Eric Rozner, Youngbin Im

202011 citationsDOI

Abstract

This paper presents a new approach to memory disaggregation called FluidMem that leverages the userfault mechanism in Linux to achieve full memory disaggregation in software. FluidMem enables dynamic and transparent resizing of an unmodified Virtual Machine’s (VM’s) memory footprint in the cloud. As a result, a VM’s memory footprint can seamlessly scale over multiple machines or even be downsized to a near-zero footprint on a given server. FluidMem’s architecture provides flexibility to cloud operators to manage remote memory without requiring guest intervention, while also supporting paging out the entirety of a VM’s pages within its address space. FluidMem integrates with a remote memory backend in a modular way, easily supporting systems such as RAMCloud to harness remote memory. We demonstrate FluidMem outperforms an existing memory disaggregation approach based on network swap. Microbenchmarks are evaluated to characterize the latency of different components of the FluidMem architecture, and two memory-intensive applications are demonstrated using FluidMem, the Graph500 benchmark, and MongoDB. Additionally, we show FluidMem can flexibly and efficiently grow and shrink the memory footprint of a VM as defined by a cloud provider.

Topics & Concepts

Computer scienceMemory footprintCloud computingOperating systemVirtual memoryFlat memory modelEmbedded systemVirtual machineMemory managementPagingInterleaved memoryModular designDistributed computingOverlayCloud Computing and Resource ManagementAdvanced Data Storage TechnologiesDistributed and Parallel Computing Systems