期刊文献+

编译时对象回收中的Java库分析研究

Study on Java Library Analysis for Compile-time Object Deallocation
下载PDF
导出
摘要 在编译辅助的垃圾收集系统中,由于方法的动态绑定等特性,编译时的分析算法保守处理虚方法调用,从而难以识别并显式回收在虚方法调用期间变为不活跃的对象.提出一种改进Java库方法调用的生命期分析策略:它以指向逃逸图为基础来抽象描述库方法对堆中对象活跃状态的改变模式,并将堆变化模式应用到Java程序的对象生命期分析中,从而增强现有对象回收技术对库调用分析的精确性.通过将本文方法应用到Jolden测试程序集中对String相关类的库调用的分析,结果表明新方法以平均增加12%的编译时间开销将显式回收对象的大小提升了33%-37%. In compiler-assisted garbage collecting systems, compile-time analysis algorithms often conservatively analyze virtual method calls, accordingly losing opportunity to explicitly free inactive ( dead ) objects during the execution of those method calls. A novel scheme is proposed to improve object lifetime analysis on Java library method calls, which is based on describing transition patterns of heap caused by library method calls using point-to escape graph abstraction. The transition patterns can be combined with previous object lifetime analysis algorithms to improve the precision of analysis. By applying the scheme to method calls of String and its related classes, experimental results suggest that the scheme may be realistic and useful i increasing the size of explicitly reclaimed objects by 33% -37% in the 12% additional cost of compile time on Jolden benchmarks.
出处 《小型微型计算机系统》 CSCD 北大核心 2012年第11期2341-2345,共5页 Journal of Chinese Computer Systems
基金 国家自然科学基金项目(60928004)资助 中央高校基本科研业务费专项资金资助
关键词 编译时对象回收 Java库 指向逃逸图 堆变化模式 compile-time reclamation Java library point-to escape graph transition patterns of heap
  • 相关文献

参考文献2

二级参考文献25

  • 1WHALEY J, RINARD M. Compositional pointer and escape analysis for java programs[J]. ACM SIGPLAN Notices, 1999, 34(10) : 187-206.
  • 2CHOI J D, GUPTA M, SREEDHAR V C, et al. Escape analysis for Java[J]. ACM SIGPLAN Notices, 1999, 34(10): 1-19.
  • 3CHOI J D, GUPTA M, SERRANO M J, et al. Stack allocation and synchronization optimizations for iava using escape analysis[J].ACM Trans on Programming Languages and Systems, 2003, 25(6):876-910.
  • 4SALCIANU A, RINARD M. Pointer and escape anal ysis for muhithreaded programs [C]//ACM SIGP LAN Symposium on Principles and Practices of Paral lel Programming. New York, USA: ACM, 2001:12 -23.
  • 5SALAGNAC G, YOVINE S, GARBERVETSKY D. Fast escape analysis for region based memory management [C]// 1st International Workshop on Abstract Interpretation for Object-Oriented Languages. Paris, France: ENTCS, 2005: 99-110.
  • 6GAY D, AIKEN A. Language support for regions [C]//ACM SIGPLAN Conference on Program Language Design and Implementation. New York, UAS: ACM, 2001: 70-80.
  • 7GUYER S Z, MCKINLEY K S, FRAMPTON D. Free-me: a static analysis for automatic individual object reclamation[C]//ACM SIGPLAN Conference on Programming Language Design and Implementation. New York, USA: ACM, 2006:364-375.
  • 8CHEREM S, RUGINA R. Uniqueness inference for compile-time object deallocation [C]//6th International Symposium on Memory Management. New York, USA: ACM, 2007: 117-128.
  • 9LEE O, YI K. Experiments on the effectiveness of an automatic insertion of memory reuses into XSML-like programs [C]//The 3rd International Symposium on Memory Management. New York, USA: ACM, 2004: 97-108.
  • 10VIVIEN F, RINARD M. Incrementalized pointer and escape analysis [C]//ACM SIGPLAN Conference on Programming Language Design and Implementation. New York, USA: ACM, 2001: 35-46.

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部