Preserving Addressability Upon GC-Triggered Data Movements on Non-Volatile Memory

This article points out an important threat that application-level Garbage Collection (GC) creates to the use of non-volatile memory (NVM). Data movements incurred by GC may invalidate the pointers to objects on NVM and, hence, harm the reusability of persistent data across executions. The article p...

Full description

Bibliographic Details
Published in:ACM Transactions on Architecture and Code Optimization
Main Authors: Ye, Chencheng, Xu, Yuanchao, Shen, Xipeng, Jin, Hai, Liao, Xiaofei, Solihin, Yan
Other Authors: National Natural Science Foundation of China, National Science Foundation
Format: Article in Journal/Newspaper
Language:English
Published: Association for Computing Machinery (ACM) 2022
Subjects:
Online Access:http://dx.doi.org/10.1145/3511706
https://dl.acm.org/doi/pdf/10.1145/3511706
Description
Summary:This article points out an important threat that application-level Garbage Collection (GC) creates to the use of non-volatile memory (NVM). Data movements incurred by GC may invalidate the pointers to objects on NVM and, hence, harm the reusability of persistent data across executions. The article proposes the concept of movement-oblivious addressing (MOA), and develops and compares three novel solutions to materialize the concept for solving the addressability problem. It evaluates the designs on five benchmarks and a real-world application. The results demonstrate the promise of the proposed solutions, especially hardware-supported Multi-Level GPointer, in addressing the problem in a space- and time-efficient manner.