Espresso: Brewing Java For More Non-Volatility with Non-volatile Memory

Mingyu Wu, Ziming Zhao, Haoyu Li, Heting Li, Haibo Chen, B. Zang, Haibing Guan
{"title":"Espresso: Brewing Java For More Non-Volatility with Non-volatile Memory","authors":"Mingyu Wu, Ziming Zhao, Haoyu Li, Heting Li, Haibo Chen, B. Zang, Haibing Guan","doi":"10.1145/3173162.3173201","DOIUrl":null,"url":null,"abstract":"Fast, byte-addressable non-volatile memory (NVM) embraces both near-DRAM latency and disk-like persistence, which has generated considerable interests to revolutionize system software stack and programming models. However, it is less understood how NVM can be combined with managed runtime like Java virtual machine (JVM) to ease persistence management. This paper proposes Espresso, a holistic extension to Java and its runtime, to enable Java programmers to exploit NVM for persistence management with high performance. Espresso first provides a general persistent heap design called Persistent Java Heap (PJH) to manage persistent data as normal Java objects. The heap is then strengthened with a recoverable mechanism to provide crash consistency for heap metadata. Espresso further provides a new abstraction called Persistent Java Object (PJO) to provide an easy-to-use but safe persistence programming model for programmers to persist application data. Evaluation confirms that Espresso significantly outperforms state-of-art NVM support for Java (i.e., JPA and PCJ) while being compatible to data structures in existing Java programs.","PeriodicalId":302876,"journal":{"name":"Proceedings of the Twenty-Third International Conference on Architectural Support for Programming Languages and Operating Systems","volume":"52 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-10-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"52","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the Twenty-Third International Conference on Architectural Support for Programming Languages and Operating Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3173162.3173201","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 52

Abstract

Fast, byte-addressable non-volatile memory (NVM) embraces both near-DRAM latency and disk-like persistence, which has generated considerable interests to revolutionize system software stack and programming models. However, it is less understood how NVM can be combined with managed runtime like Java virtual machine (JVM) to ease persistence management. This paper proposes Espresso, a holistic extension to Java and its runtime, to enable Java programmers to exploit NVM for persistence management with high performance. Espresso first provides a general persistent heap design called Persistent Java Heap (PJH) to manage persistent data as normal Java objects. The heap is then strengthened with a recoverable mechanism to provide crash consistency for heap metadata. Espresso further provides a new abstraction called Persistent Java Object (PJO) to provide an easy-to-use but safe persistence programming model for programmers to persist application data. Evaluation confirms that Espresso significantly outperforms state-of-art NVM support for Java (i.e., JPA and PCJ) while being compatible to data structures in existing Java programs.
浓缩咖啡:用非易失性内存酿造更多的非易失性Java
快速的、可字节寻址的非易失性存储器(NVM)包含接近dram的延迟和类似磁盘的持久性,这引起了人们对系统软件堆栈和编程模型的革命的极大兴趣。然而,人们对如何将NVM与托管运行时(如Java虚拟机(JVM))结合起来以简化持久性管理还不太了解。本文提出了Espresso,它是Java及其运行时的一个整体扩展,使Java程序员能够利用NVM进行高性能的持久化管理。Espresso首先提供了一个通用的持久化堆设计,称为持久化Java堆(persistent Java heap, PJH),将持久化数据作为普通Java对象来管理。然后使用可恢复机制加强堆,为堆元数据提供崩溃一致性。Espresso进一步提供了一个新的抽象,称为持久化Java对象(Persistent Java Object, PJO),为程序员持久化应用程序数据提供了一个易于使用但安全的持久化编程模型。评估证实,Espresso在与现有Java程序的数据结构兼容的同时,显著优于最先进的NVM对Java(即JPA和PCJ)的支持。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信