基于NVM的分代式可恢复Java垃圾回收器

来源 :上海交通大学 | 被引量 : 0次 | 上传用户:mugua220
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
新兴的非易失性存储器(NVM)技术拥有低访问延迟、非易失性和字节寻址的特性。这些特性使得它在不久的将来有可能替代动态随机存储器(DRAM)或者和DRAM混合使用。随着云计算和并行计算的出现,许多企业都开始使用大数据处理系统,例如Spark,Hadoop和Flink。这些系统通常运行在Java虚拟机之上,且对数据存储的速度有较高的要求,于是出现了使用NVM给Java虚拟机增加持久化支持的工作。这些工作的总体思想是在NVM上建立一个具有持久化特性的Java堆,从而使得Java的对象数据具有非易失性。Java虚拟机中很重要的一部分就是垃圾回收器。Java、C#、Javascript等高级语言都使用垃圾回收器来帮助用户自动回收失效的对象并保证内存的安全。由于NVM的非易失性等特征也使得原本的垃圾回收不能直接在NVM上使用,需要进行修改。目前所出现的基于NVM的垃圾回收器多数都是单一代的,即将可持久化的对象用统一的回收器进行垃圾回收。这种设计虽然能够简化垃圾回收器的实现,却忽略了 Java中大部分对象的存活时间都很短,只有很少一部分对象能够长时间留存在堆上的特点。本论文提出一个支持崩溃恢复的基于NVM的分代式Java垃圾回收器,它将持久化堆划分成年轻代和老年代两部分。该垃圾回收器包含了两种垃圾回收策略:年轻代的垃圾回收可以清除年轻代中失效的对象,而老年代的垃圾回收可以清除持久化堆上所有失效的对象。它还充分利用了NVM非易失性的特点,确保在垃圾回收过程中即使发生了崩溃也不会出现数据丢失或者不一致的状况。本文主要贡献分为以下三个部分:1.针对年轻代的垃圾回收,本文讨论了可能出现的不一致性的场景,提出了多种解决方案,使Java虚拟机即使在垃圾回收过程中意外崩溃也可以正常恢复并将回收继续进行下去。2.针对老年代的垃圾回收,本文主要基于已有的单代式持久化Java堆的垃圾回收机制并对其进行优化,通过分析其元数据的特点和内存分布情况将数据进行不同方式的压缩,使其内存开销大量减少。3.对分代式垃圾回收的性能做了相应的测试。测试表明,本文提出的分代式垃圾回收器在对象创建删除较多的场景下比前人工作中的单一代回收器有明显性能提升。提出的对元数据的压缩在存储时间、空间及恢复上的消耗都有较大程度的降低。
其他文献
在本研究中,测定了香兰醇在不同溶剂中的溶解度、介稳区,并对其结晶工艺进行了优化。在293.15K到343.15 K温度范围内,采用静态法测定了香兰醇在8种溶剂中的溶解度。发现香兰
钢筋锈蚀是影响混凝土结构及构件耐久性的关键因素之一,使用不锈钢钢筋代替普通钢筋能有效解决该问题。然而关于配置国产不锈钢钢筋结构构件性能的研究较少,而主要集中于静力
目前,我国北方地区逐渐推行使用清洁能源的采暖方式,并取得了良好的经济效益。电采暖因具有灵活、稳定、安全等特点受到广泛关注,其用户数量日益增多。但我国对电采暖建筑的
基于发布/订阅模型的数据分发服务DDS是OMG组织提出的一个分布式实时中间件通信规范,它提供了高效的通信机制,支持以数据为中心的分布式应用场景,因而广泛应用于国防、民航等关键领域。在这些领域中,发布/订阅分布式系统由于承载了关键应用而变得非常重要,需要在线监控其运行状态,确保正常运行。然而,现有的针对发布/订阅分布式系统的在线状态监控软件仅能获取系统运行过程中的各类状态信息,系统维护人员需要根据经
从三沙市成立到21世纪海上丝绸之路倡议,南海海域的开发建设活动越来越多,但在这些区域广泛分布的钙质砂具有形状不规则、棱角较多、质脆易碎等特点,给在钙质砂基础上的工程
钢管约束钢筋混凝土柱,具有承载力高,变形能力好,抗震性能优越等特点,适用多高层结构,应用前景广阔。目前国内外学者对钢管约束混凝土的研究主要集中在柱子和节点等构件层面,
开绕组永磁同步电机以其在多电平运行特性和容错控制等方面的优势成为近年来研究的热点。由双逆变器馈电的开绕组电机有共母线和独立母线两种接线方式,两者都存在冗余的开关
在凝析气藏生产中,为减少凝析油损失,提高采出程度,需要准确的高压物性参数,即相态变化特征;而凝析油在从井底采到地面的过程中,随着温度和压力的降低,会出现石蜡沉积,从而影
近年来我国经济取得了长足发展,也逐渐形成了集团化和多元化的发展趋势。集团化发展对资金集中管理提出了较高的要求,而多元化发展中又以金融行业为重点,因此,同时具备资金集
1998年,我国开始住房制度改革,并以此开启了房地产业的“市场化”时代。此后,我国房地产市场经历了一段蓬勃发展的黄金时期。在房地产经济的带动下,我国国民经济长期处于高速