NVAlloc: Rethinking Heap Metadata Management in Persistent Memory Allocators

27Citations
Citations of this article
24Readers
Mendeley users who have this article in their library.
Get full text

Abstract

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.

Cite

CITATION STYLE

APA

Dang, Z., He, S., Hong, P., Li, Z., Zhang, X., Sun, X. H., & Chen, G. (2022). NVAlloc: Rethinking Heap Metadata Management in Persistent Memory Allocators. In International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS (pp. 115–127). Association for Computing Machinery. https://doi.org/10.1145/3503222.3507743

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free