skip to main content

DOE PAGESDOE PAGES

Title: Makalu: fast recoverable allocation of non-volatile memory

Byte addressable non-volatile memory (NVRAM) is likely to supplement, and perhaps eventually replace, DRAM. Applications can then persist data structures directly in memory instead of serializing them and storing them onto a durable block device. However, failures during execution can leave data structures in NVRAM unreachable or corrupt. In this paper, we present Makalu, a system that addresses non-volatile memory management. Makalu offers an integrated allocator and recovery-time garbage collector that maintains internal consistency, avoids NVRAM memory leaks, and is efficient, all in the face of failures. We show that a careful allocator design can support a less restrictive and a much more familiar programming model than existing persistent memory allocators. Our allocator significantly reduces the per allocation persistence overhead by lazily persisting non-essential metadata and by employing a post-failure recovery-time garbage collector. Experimental results show that the resulting online speed and scalability of our allocator are comparable to well-known transient allocators, and significantly better than state-of-the-art persistent allocators.
Authors:
 [1] ;  [2] ;  [3]
  1. Rice Univ., Houston, TX (United States); Hewlett Packard Labs., Palo Alto, CA (United States)
  2. Hewlett Packard Labs., Palo Alto, CA (United States)
  3. Google Inc., Mountain View, CA (United States)
Publication Date:
Grant/Contract Number:
SC0012199
Type:
Accepted Manuscript
Journal Name:
ACM SIGPLAN Notices
Additional Journal Information:
Journal Volume: 51; Journal Issue: 10; Conference: 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications, Amsterdam (Netherlands), 31 Oct-4 Nov 2016; Journal ID: ISSN 0362-1340
Publisher:
ACM
Research Org:
Hewlett Packard Labs., Palo Alto, CA (United States); Rice Univ., Houston, TX (United States)
Sponsoring Org:
USDOE Office of Science (SC), Advanced Scientific Computing Research (ASCR) (SC-21)
Country of Publication:
United States
Language:
English
Subject:
97 MATHEMATICS AND COMPUTING; languages; performance; reliability; non-volatile memory; persistent memory management; allocation; deallocation; garbage collection
OSTI Identifier:
1425366

Bhandari, Kumud, Chakrabarti, Dhruva R., and Boehm, Hans-J.. Makalu: fast recoverable allocation of non-volatile memory. United States: N. p., Web. doi:10.1145/2983990.2984019.
Bhandari, Kumud, Chakrabarti, Dhruva R., & Boehm, Hans-J.. Makalu: fast recoverable allocation of non-volatile memory. United States. doi:10.1145/2983990.2984019.
Bhandari, Kumud, Chakrabarti, Dhruva R., and Boehm, Hans-J.. 2016. "Makalu: fast recoverable allocation of non-volatile memory". United States. doi:10.1145/2983990.2984019. https://www.osti.gov/servlets/purl/1425366.
@article{osti_1425366,
title = {Makalu: fast recoverable allocation of non-volatile memory},
author = {Bhandari, Kumud and Chakrabarti, Dhruva R. and Boehm, Hans-J.},
abstractNote = {Byte addressable non-volatile memory (NVRAM) is likely to supplement, and perhaps eventually replace, DRAM. Applications can then persist data structures directly in memory instead of serializing them and storing them onto a durable block device. However, failures during execution can leave data structures in NVRAM unreachable or corrupt. In this paper, we present Makalu, a system that addresses non-volatile memory management. Makalu offers an integrated allocator and recovery-time garbage collector that maintains internal consistency, avoids NVRAM memory leaks, and is efficient, all in the face of failures. We show that a careful allocator design can support a less restrictive and a much more familiar programming model than existing persistent memory allocators. Our allocator significantly reduces the per allocation persistence overhead by lazily persisting non-essential metadata and by employing a post-failure recovery-time garbage collector. Experimental results show that the resulting online speed and scalability of our allocator are comparable to well-known transient allocators, and significantly better than state-of-the-art persistent allocators.},
doi = {10.1145/2983990.2984019},
journal = {ACM SIGPLAN Notices},
number = 10,
volume = 51,
place = {United States},
year = {2016},
month = {10}
}