@inproceedings{881020f650ef4bc8a1f3c9fb0624ef20,
title = "Nova: Safe Off-Heap Memory Allocation and Reclamation",
abstract = "In recent years, we begin to see Java-based systems embrace off-heap allocation for their big data demands. As of today, these system rely on simple ad-hoc garbage-collection solutions, which restrict the usage of off-heap data. This paper introduces the abstraction of safe off-heap memory allocation and reclamation (SOMAR), a thread-safe memory allocation and reclamation scheme for off-heap data in otherwise managed environments. SOMAR allows multi-threaded Java programs to use off-heap memory seamlessly. To realize this abstraction, we present Nova, Novel Off-heap Versioned Allocator, a lock-free SOMAR implementation. Our experiments show that Nova can be used to store off-heap data in Java data structures with better performance than ones managed by Java{\textquoteright}s automatic GC. We further integrate Nova into the open-source Oak concurrent map library, which allows Oak to reclaim keys while the data structure is being accessed.",
keywords = "concurrency, memory reclamation, off-heap allocation, performance",
author = "Ramy Fakhoury and Anastasia Braginsky and Idit Keidar and Yoav Zuriel",
note = "Publisher Copyright: {\textcopyright} Ramy Fakhoury, Anastasia Braginsky, Idit Keidar, and Yoav Zuriel;; 27th International Conference on Principles of Distributed Systems, OPODIS 2023 ; Conference date: 06-12-2023 Through 08-12-2023",
year = "2024",
month = jan,
doi = "10.4230/LIPIcs.OPODIS.2023.15",
language = "الإنجليزيّة",
series = "Leibniz International Proceedings in Informatics, LIPIcs",
editor = "Alysson Bessani and Xavier Defago and Junya Nakamura and Koichi Wada and Yukiko Yamauchi",
booktitle = "27th International Conference on Principles of Distributed Systems, OPODIS 2023",
}