PMShifter: Enabling Persistent Memory Fluidness in Linux

PMShifter: Enabling Persistent Memory Fluidness in Linux
复制标题

PMShifter:在 Linux 中实现持久内存流动性

DOI:
10.1145/3546591.3547523
复制
发表时间:
2022
期刊:
ACM Asia-Pacific Workshop on Systems (APSys
影响因子:
--
通讯作者:
Theodore Michailidis, Steven Swanson
Theodore Michailidis, Steven Swanson
中科院分区:
--
文献类型:
--
作者:
Theodore Michailidis, Steven Swanson

文献摘要

相似文献

英特尔最近发布了首款商用服务器级持久内存(PM)——Optane DC持久内存。 PM 弥合了易失性和非易失性存储设备之间长期存在的差距,因为它的字节寻址能力和非易失性使其能够同时部分用作存储和内存。传统内存管理设计的一个缺点是这种区别需要在启动时进行或通过用户级程序显式设置。这限制了设备提供的灵活性,因为数据持久性要求随着时间的推移而变化。为了解决这个问题,我们提出了PMShifter,它可以在内存和存储之间透明且动态地配置PM。为了实现这种灵活的配置,PMShifter 还针对低效的内存压缩、页面迁移和 PM 忽略的 NUMA 策略。我们在微基准和实际工作负载上对 PMShifter 进行了评估,结果显示页面迁移吞吐量提高了 12.3 倍,在压缩过程中检索物理连续内存段的速度提高了 12.77 倍,而运行 Redis 时,尾部延迟减少了 64%,吞吐量提高了 2.09 倍。
Intel recently released the first commercial server-grade persistent memory (PM), Optane DC Persistent Memory. PM bridges the long-standing gap between volatile and non-volatile storage devices, as its byte-addressability and non-volatility allow it to be used partly as storage and memory simultaneously. One downside of conventional memory management design is that such distinction needs to be made at boot time or explicitly set through a user-level program. This limits the flexibility offered by the device, as data persistence requirements vary over time.To address this issue, we proposePMShifter, which transparently and dynamically configures PM between memory and storage. To enable this flexible configuration, PMShifter also targets inefficient memory compaction, page migration and PM-oblivious NUMA policies. We evaluate PMShifter on micro-benchmarks and real-life workloads, showing up to 12.3X improved page migration throughput, faster retrieval of up to 12.77X more large physically contiguous memory segments during compaction, while running Redis displayed 64% reduced tail latency and 2.09X improved throughput.