近日,中国科学院软件研究所科研团队在语言虚拟机内存管理方面取得进展,涉及垃圾回收(GC)算法的跨语言性能评估以及面向大数据系统的新型垃圾回收器设计。
在现代编程语言中,GC负责自动管理内存分配和回收,其效率直接影响用户程序的性能。目前,学术界和工业界主要通过对比评估单一语言运行环境下的GC实现,来分析性能差异指导GC优化,缺少直接实现不同语言运行环境下的GC性能差异评估的方法。
针对这一不足,研究团队提出了GEAR方法,通过自动构建适用于不同语言运行环境的一致性GC工作负载,实现跨语言GC性能评估。GEAR的核心在于设计了一组与运行环境无关的内存操作原语(MOP),用于描述影响GC行为的关键内存使用信息。GEAR可以将这些MOP程序自动转换为目标语言的代码,并生成一致的GC测试负载。为保证测试负载的真实性,团队对Java虚拟机进行插桩,记录实际Java应用程序执行期间的内存操作,并将其转换为MOP程序,进而适配到其他语言运行环境。
实验表明,GEAR能够在Java、Go和C#三个广泛使用的运行环境生成一致的GC工作负载。基于此,团队对比了这三种语言的GC实现情况,揭示了6项性能差异,并分析了可能原因,为未来GC优化提供了参考依据。
相关成果被ICSE 2025会议录用。研究工作得到国家自然科学基金和中国科学院相关项目的支持。
当前,Apache Flink、Spark等主流大数据框架普遍运行于JVM平台,其内存管理依赖JVM虚拟机的GC算法。然而,大数据应用通常产生大量长生命周期的数据对象,这与传统GC算法针对短生命周期对象优化的设计假设存在差异,导致GC效率低下,影响系统性能。
针对这一问题,研究团队面向大数据系统,设计并提出了新型跨层次垃圾回收器BridgeGC,通过框架层与GC层的协同设计实现内存管理优化。具体来说,BridgeGC在框架源码层面采用极简注解方式标记关键数据的创建和释放点,帮助GC层识别数据对象及其生命周期;BridgeGC在GC层设计了分离式内存布局,将普通对象和大数据对象分区管理,提高内存访问效率;BridgeGC通过自适应GC回收策略,根据对象生命周期动态调整数据处理时期,避免冗余标记等不必要操作。
研究团队将BridgeGC集成至OpenJDK 17的ZGC回收器,并在Apache Flink、Spark等主流大数据系统进行验证。实验数据显示,BridgeGC在保持内存使用效率的同时将GC耗时降低了31%至82%。此外,BridgeGC提升了端到端应用性能,且对业务系统透明,无需修改应用代码。
相关成果被ACM TACO录用。研究工作得到国家自然科学基金等的支持。
华南农业大学兽医学院药理团队曾振灵教授和陈建新研究员在国家自然科学基金创新群体项目、国家自然科学基金非洲猪 据“安徽大学”微信公众号消息,11月8日下午,学校在磬苑校区材料科学大楼D座二楼报告厅召开妇女联合会成立暨第一次妇女代 薛定谔提出生命以负熵为生。普里高津提出耗散结构理论,进一步阐释了能量在有序结构演化中的作用。生物组装体展现出这种能量耗散的特性。当前,科学家借助化学手段,构建了多种耗散组装体系,获得了瞬态结构和性质。而 区域简况 湖北鄂州历史悠久,常住人口107万,是古铜镜之乡,也是驰名中外的“武昌鱼”的原产地。近年来,鄂州市全面加强党对教育事业的领导,建设“生本课堂”、建立“一生一导师”,打造“明、 中国教育报-中国教育新闻网讯(通讯员 付建强 喻杰勇)近日,湖南省宁乡市举办的2024年中小学青少年足球联赛如火如荼地开展着,从9月到11月,来自宁乡市各中小学的75支队伍超1500名运动员参加比赛,共举 中国教育报-中国教育新闻网讯(记者 任朝霞)11月12日,上海市黄浦区义务教育教学改革实验区推进大会暨黄浦区第六届小学教学节在上海师范大学附属卢湾实验小学举行,会上解读了黄浦区义务教育教学改 。本文链接:语言虚拟机内存管理研究取得进展http://www.sushuapos.com/show-12-1510-0.html
声明:本网站为非营利性网站,本网页内容由互联网博主自发贡献,不代表本站观点,本站不承担任何法律责任。天上不会到馅饼,请大家谨防诈骗!若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
上一篇: “百县对百校促就业行动”滁州专场校企供需对接会暨“百校学子滁州行”活动举办
下一篇: 研究通过纳米限域结晶构筑高性能呋喃聚酯