Abstract
Traditional memory allocation mechanisms are not
suitable for new DRAM-based storage systems because
they use memory inefficiently, particularly under changing
access patterns. In contrast, a log-structured approach
to memory management allows 80-90% memory utilization
while offering high performance. The RAMCloud
storage system implements a unified log-structured mechanism
both for active information in memory and backup
data on disk. The RAMCloud implementation of logstructured
memory uses a two-level cleaning policy,
which conserves disk bandwidth and improves performance
up to 6x at high memory utilization. The cleaner
runs concurrently with normal operations and employs
multiple threads to hide most of the cost of cleaning.