TY - GEN
T1 - Efficient Atomic Durability on eADR-enabled Persistent Memory
AU - Zhou, Taiyu
AU - Du, Yajuan
AU - Yang, Fan
AU - Liao, Xiaojian
AU - Lu, Youyou
N1 - Publisher Copyright:
© 2022 Association for Computing Machinery.
PY - 2022/10/8
Y1 - 2022/10/8
N2 - Applications atop persistent memory (PM) require atomic durability to ensure crash consistency. However, existing atomic durability techniques designed for PM systems are based on volatile cache and incur non-negligible performance overhead. Recently, Intel introduces a new feature called eADR (enhanced Asynchronous DRAM Refresh) for Optane PM, which brings an opportunity to build a much more efcient atomic durability system for PM. In this paper, we propose LOAD, a low-overhead atomic durability technique that builds upon eADR. Leveraging the memory hierarchy, LOAD introduces transaction-aware cache (TaC) and device-friendly logging (DFL) to maintain multiple versions of data in a fne-grained and lightweight manner. TaC leverages the memory hierarchy to move the old but valid data from a higher level cache (e.g., L1) to the neighboring lower level (e.g., L2), which retains old version data in caches for crash recovery. DFL records necessary old version data to logs, which ensures transactional data can be atomically evicted from the last level cache to PM. To our knowledge, LOAD is the frst atomic durability mechanism designed for eADR-enabled PM systems. Our experimental evaluation shows that LOAD incurs less than 1% performance overhead and outperforms the state-of-the-art by up to 6.7× on workloads with a large write set.
AB - Applications atop persistent memory (PM) require atomic durability to ensure crash consistency. However, existing atomic durability techniques designed for PM systems are based on volatile cache and incur non-negligible performance overhead. Recently, Intel introduces a new feature called eADR (enhanced Asynchronous DRAM Refresh) for Optane PM, which brings an opportunity to build a much more efcient atomic durability system for PM. In this paper, we propose LOAD, a low-overhead atomic durability technique that builds upon eADR. Leveraging the memory hierarchy, LOAD introduces transaction-aware cache (TaC) and device-friendly logging (DFL) to maintain multiple versions of data in a fne-grained and lightweight manner. TaC leverages the memory hierarchy to move the old but valid data from a higher level cache (e.g., L1) to the neighboring lower level (e.g., L2), which retains old version data in caches for crash recovery. DFL records necessary old version data to logs, which ensures transactional data can be atomically evicted from the last level cache to PM. To our knowledge, LOAD is the frst atomic durability mechanism designed for eADR-enabled PM systems. Our experimental evaluation shows that LOAD incurs less than 1% performance overhead and outperforms the state-of-the-art by up to 6.7× on workloads with a large write set.
KW - Persistent memory
KW - atomic durability
KW - crash consistency
KW - logging
UR - https://www.scopus.com/pages/publications/85147327003
U2 - 10.1145/3559009.3569676
DO - 10.1145/3559009.3569676
M3 - 会议稿件
AN - SCOPUS:85147327003
T3 - Parallel Architectures and Compilation Techniques - Conference Proceedings, PACT
SP - 124
EP - 134
BT - PACT 2022 - Proceedings of the 2022 International Conference on Parallel Architectures and Compilation Techniques
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 31st International Conference on Parallel Architectures and Compilation Techniques, PACT 2022
Y2 - 8 October 2022 through 10 October 2022
ER -