NVAlloc: rethinking heap metadata management in persistent memory allocators
Zheng Dang, Shuibing He, Peiyi Hong, Zhenxin Li, Xuechen Zhang, Xian-He Sun, Gang Chen
摘要
Persistent memory allocation is a fundamental building block for developing high-performance and in-memory applications. Existing persistent memory allocators suffer from suboptimal heap organizations that introduce repeated cache line flushes and small random accesses in persistent memory. Worse, many allocators use static slab segregation resulting in a dramatic increase in memory consumption when allocation request size is changed. In this paper, we design a novel allocator, named NVAlloc, to solve the above issues simultaneously. First, NVAlloc eliminates cache line reflushes by mapping contiguous data blocks in slabs to interleaved metadata entries stored in different cache lines. Second, it writes small metadata units to a persistent bookkeeping log in a sequential pattern to remove random heap metadata accesses in persistent memory. Third, instead of using static slab segregation, it supports slab morphing, which allows slabs to be transformed between size classes to significantly improve slab usage. NVAlloc is complementary to the existing consistency models. Results on 6 benchmarks demonstrate that NVAlloc improves the performance of state-of-the-art persistent memory allocators by up to 6.4x and 57x for small and large allocations, respectively. Using NVAlloc reduces memory usage by up to 57.8%. Besides, we integrate NVAlloc in a persistent FPTree. Compared to the state-of-the-art allocators, NVAlloc improves the performance of this application by up to 3.1x.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper9
- XPGraph: XPline-Friendly Persistent Memory Graph Stores for Large-Scale Evolving GraphsRui Wang, Shuibing He, Weixu Zong, Yongkun Li 等MICRO 2022 · 被引用 21 次
- iCache: An Importance-Sampling-Informed Cache for Accelerating I/O-Bound DNN Model TrainingWeijian Chen, Shuibing He, Yaowen Xu, Xuechen Zhang 等HPCA 2023 · 被引用 20 次
- Revisiting Secondary Indexing in LSM-based Storage Systems with Persistent MemoryJing Wang, Youyou Lu, Qing Wang, Yuhao Zhang 等USENIX ATC 2023 · 被引用 13 次
- Silo: Speculative Hardware Logging for Atomic Durability in Persistent MemoryMing Zhang, Yu HuaHPCA 2023 · 被引用 8 次
- Root Crash Consistency of SGX-style Integrity Trees in Secure Non-Volatile Memory SystemsJianming Huang, Yu HuaHPCA 2023 · 被引用 6 次
它引用的顶会 Paper8
- An Empirical Guide to the Behavior and Use of Scalable Persistent MemoryJian Yang, Juno Kim, Morteza Hoseinzadeh, Joseph Izraelevitz 等FAST 2020 · 被引用 470 次
- FlatStore: An Efficient Log-Structured Key-Value Storage Engine for Persistent MemoryYoumin Chen, Youyou Lu, Fan Yang, Qing Wang 等ASPLOS 2020 · 被引用 166 次
- Lock-free Concurrent Level Hashing for Persistent MemoryZhangyu Chen, Yu Hua, Bo Ding, Pengfei ZuoUSENIX ATC 2020 · 被引用 98 次
- ROART: Range-query Optimized Persistent ARTShaonan Ma, Kang Chen, Shimin Chen, Mengxing Liu 等FAST 2021 · 被引用 73 次
- LB+-Trees: Optimizing Persistent Index Performance on 3DXPoint MemoryJihang Liu, Shimin Chen, Lujun WangVLDB 2020 · 被引用 69 次
相关 Paper
- Improving the Relationship Between B+-Tree and Memory Allocator for Persistent MemoryWei Yan, Xingjun ZhangICDE 2024 · 被引用 2 次
- Revisiting the Design of LSM-tree Based OLTP Storage Engine with Persistent MemoryBaoyue Yan, Xuntao Cheng, Bo Jiang, Shibin Chen 等VLDB 2021 · 被引用 30 次
- ASAP: A Speculative Approach to PersistenceSujay Yadalam, Nisarg Shah, Xiangyao Yu, Michael M. SwiftHPCA 2022 · 被引用 17 次
- FFCCD: fence-free crash-consistent concurrent defragmentation for persistent memoryYuanchao Xu, Chencheng Ye, Yan Solihin, Xipeng ShenISCA 2022 · 被引用 9 次
- DINOMO: An Elastic, Scalable, High-Performance Key-Value Store for Disaggregated Persistent MemorySe Kwon Lee, Soujanya Ponnapalli, Sharad Singhal, Marcos K. Aguilera 等VLDB 2022 · 被引用 49 次
