DV-NVLLC: Efficiently guaranteeing crash consistency in persistent memory via dynamic versioning

Kai Tang, Wei Tong, Jun Ma, Bo Liu
{"title":"DV-NVLLC: Efficiently guaranteeing crash consistency in persistent memory via dynamic versioning","authors":"Kai Tang, Wei Tong, Jun Ma, Bo Liu","doi":"10.1109/NAS.2019.8834719","DOIUrl":null,"url":null,"abstract":"Byte-addressable persistent memory provides fast access to persistent data, but problems such as system crashes and power failures may cause persistent data corruption. Though using traditional logging or copy-on-write(COW) can guarantee crash consistency, it results in extra storage and performance overheads, and also shortens the lifetime of persistent memory. To reduce the overhead caused by logging and COW, existing mechanisms ensure consistency by leveraging the different versions of data in a non-volatile CPU cache(NV cache) and persistent memory. However, the performance loss is still significant compared with the system that does not enforce crash consistency. To improve the performance, we analyze the overheads of memory transactions quantitatively, including the access pattern of cache and the asymmetry of read and write of persistent memory media. Based on our analysis, we propose DV-NVLLC which uses the NV cache as the last-level cache(NV-LLC). In NVLLC the dynamic versioning method is used to manage different versions of data based on their update frequency. Hot data is updated-of-place in NV-LLC. Cold data is updated by version control between NV-LLC and persistent memory. Therefore, DV-NVLLC can reduce write traffic to persistent memory while guaranteeing crash consistency. Our evaluation shows that DV-NVLLC improves performance by 18% to 57%, and reduces write traffic to persistent memory by 35% to 89% compared with the state-of-the-art design that uses NV cache as the last-level cache.","PeriodicalId":230796,"journal":{"name":"2019 IEEE International Conference on Networking, Architecture and Storage (NAS)","volume":"39 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2019 IEEE International Conference on Networking, Architecture and Storage (NAS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/NAS.2019.8834719","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

Abstract

Byte-addressable persistent memory provides fast access to persistent data, but problems such as system crashes and power failures may cause persistent data corruption. Though using traditional logging or copy-on-write(COW) can guarantee crash consistency, it results in extra storage and performance overheads, and also shortens the lifetime of persistent memory. To reduce the overhead caused by logging and COW, existing mechanisms ensure consistency by leveraging the different versions of data in a non-volatile CPU cache(NV cache) and persistent memory. However, the performance loss is still significant compared with the system that does not enforce crash consistency. To improve the performance, we analyze the overheads of memory transactions quantitatively, including the access pattern of cache and the asymmetry of read and write of persistent memory media. Based on our analysis, we propose DV-NVLLC which uses the NV cache as the last-level cache(NV-LLC). In NVLLC the dynamic versioning method is used to manage different versions of data based on their update frequency. Hot data is updated-of-place in NV-LLC. Cold data is updated by version control between NV-LLC and persistent memory. Therefore, DV-NVLLC can reduce write traffic to persistent memory while guaranteeing crash consistency. Our evaluation shows that DV-NVLLC improves performance by 18% to 57%, and reduces write traffic to persistent memory by 35% to 89% compared with the state-of-the-art design that uses NV cache as the last-level cache.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
DV-NVLLC:通过动态版本控制有效地保证持久内存中的崩溃一致性
字节寻址的持久内存提供了对持久数据的快速访问,但是系统崩溃和电源故障等问题可能会导致持久数据损坏。尽管使用传统的日志记录或写时复制(COW)可以保证崩溃一致性,但它会导致额外的存储和性能开销,并且还会缩短持久内存的生命周期。为了减少日志记录和COW造成的开销,现有机制通过利用非易失性CPU缓存(NV缓存)和持久内存中的不同版本的数据来确保一致性。但是,与不强制崩溃一致性的系统相比,性能损失仍然很大。为了提高性能,我们定量地分析了内存事务的开销,包括缓存的访问模式和持久存储介质的读写不对称。在此基础上,我们提出了使用NV缓存作为最后一级缓存的DV-NVLLC (NV- llc)。在NVLLC中,采用动态版本控制方法根据数据的更新频率对不同版本的数据进行管理。热数据在NV-LLC中就地更新。冷数据通过NV-LLC和持久内存之间的版本控制进行更新。因此,DV-NVLLC可以减少对持久内存的写流量,同时保证崩溃一致性。我们的评估表明,与使用NV缓存作为最后一级缓存的最先进设计相比,DV-NVLLC将性能提高了18%至57%,并将对持久内存的写流量减少了35%至89%。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
NAS 2019 Program Optimizing Tail Latency of LDPC based Flash Memory Storage Systems Via Smart Refresh HCMonitor: An Accurate Measurement System for High Concurrent Network Services Learning Workflow Scheduling on Multi-Resource Clusters An Adaptive SSD Cache Architecture Simultaneously Using Multiple Caches
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1