近日,中国科学院软件研究所科研团队在语言虚拟机内存管理方面取得进展,涉及垃圾回收(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录用。研究工作得到国家自然科学基金等的支持。
海风拂面。从秘鲁的泛美公路望向太平洋,浩渺烟波中,高大的岸桥整齐排列,防波堤如巨臂环绕,码头工人忙碌穿梭,崭新的钱凯港即将投入正式运营。今年6月,习近平主席同秘鲁总统博鲁阿尔特会谈时专门提 对住宿在校的学生来说,特别是留守学生,最缺的就是陪伴。在湖北省襄阳市谷城县一所乡镇学校,为了让初中生在校能安心睡觉、吃饭和学习,校长每天都坚持陪餐、陪寝,和学生住在一栋宿舍楼,尽可能地陪在 中国教育报-中国教育新闻网讯(记者 阿妮尔 通讯员 徐磊)日前,南京邮电大学联合中北大学、河北科技大学和临沂大学举办八路军红色文化思政育人研讨会。据悉,此次研讨会是四校进一步用好红色资源,落 中国教育报-中国教育新闻网讯(记者 方梦宇)近日,由教育部学校规划建设发展中心主办,合肥工业大学承办的2024国际产学研用合作会议新能源与智能网联汽车研讨会在合肥召开。来自国内外知名高校、企 教育部办公厅关于做好“优师计划”师范生就业工作的通知教师厅函〔2024〕22号各省、自治区、直辖市教育厅(教委),新疆生产建设兵团教育局,部属师范大学:为贯彻落实《中共中央 国务院关于弘扬教育 中国教育报-中国教育新闻网讯(记者 史望颖 通讯员 金挺 陈波)“在一个小时内,我们完成了‘盛世芳华’插花作品,让这个源于‘两山理论’灵感的花艺展示在世界舞台上绽放。”近日,随着宁波城市职业 。本文链接:语言虚拟机内存管理研究取得进展http://www.sushuapos.com/show-12-1510-0.html
声明:本网站为非营利性网站,本网页内容由互联网博主自发贡献,不代表本站观点,本站不承担任何法律责任。天上不会到馅饼,请大家谨防诈骗!若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
上一篇: “百县对百校促就业行动”滁州专场校企供需对接会暨“百校学子滁州行”活动举办
下一篇: 研究通过纳米限域结晶构筑高性能呋喃聚酯