HOOP: Efficient Hardware-Assisted Out-of-Place Update for Non-Volatile Memory

HOOP: Efficient Hardware-Assisted Out-of-Place Update for Non-Volatile Memory
复制标题

DOI:
10.1109/isca45697.2020.00055
复制
发表时间:
2020-05
期刊:
2020 ACM/IEEE 47th Annual International Symposium on Computer Architecture (ISCA)
影响因子:
--
通讯作者:
Miao Cai;Chance C. Coats;Jian Huang
Miao Cai;Chance C. Coats;Jian Huang
中科院分区:
其他
文献类型:
--
作者:
Miao Cai;Chance C. Coats;Jian Huang

文献摘要

被引文献

相似文献

字节可寻址非易失性存储器(NVM)是一种很有前途的技术,它提供接近dram的性能和可扩展的内存容量。但是,它需要原子数据持久性来确保内存持久性。因此,提出了许多技术,包括日志记录和影子分页。然而,它们中的大多数要么给NVM带来额外的写流量,要么在程序执行的关键路径上带来显著的性能开销,或者两者兼而有之。在本文中,我们提出了一种透明且高效的硬件辅助异地更新(HOOP)机制,该机制支持原子数据持久性,而不会产生太多额外的写入和性能开销。关键思想是将更新的数据写入NVM中的新位置,同时保留旧数据,直到更新的数据变得持久。为了支持这一点,我们在内存控制器中开发了一个轻量级的间接层,以实现NVM的有效地址转换和自适应垃圾收集。我们用各种流行的数据结构和数据密集型应用程序(包括键值存储和数据库)来评估HOOP。我们的评估表明,HOOP实现了低关键路径延迟和小写放大,这接近于不支持持久性的本机系统。与最先进的崩溃一致性技术相比,它将应用程序性能提高了1.7倍,同时将写入放大降低了2.1倍。HOOP还展示了在多核系统上的可扩展数据恢复能力。
Byte-addressable non-volatile memory (NVM) is a promising technology that provides near-DRAM performance with scalable memory capacity. However, it requires atomic data durability to ensure memory persistency. Therefore, many techniques, including logging and shadow paging, have been proposed. However, most of them either introduce extra write traffic to NVM or suffer from significant performance overhead on the critical path of program execution, or even both.In this paper, we propose a transparent and efficient hardware-assisted out-of-place update (HOOP) mechanism that supports atomic data durability, without incurring much extra writes and performance overhead. The key idea is to write the updated data to a new place in NVM, while retaining the old data until the updated data becomes durable. To support this, we develop a lightweight indirection layer in the memory controller to enable efficient address translation and adaptive garbage collection for NVM. We evaluate HOOP with a variety of popular data structures and data-intensive applications, including key-value stores and databases. Our evaluation shows that HOOP achieves low critical-path 1atency with small write amplification, which is close to that of a native system without persistence support. Compared with state-of-the-art crash-consistency techniques, it improves application performance by up to $ 1.7\times$, while reducing the write amplification by up to $ 2.1\times$. HOOP also demonstrates scalable data recovery capability on multi-core systems.