期刊文献+

NUMA结构的高效实时稳定的垃圾回收算法

A high-efficient,real-time and stable garbage collection algorithm for NUMA
下载PDF
导出
摘要 针对非一致性内存访问架构(NUMA)在垃圾回收(GC)过程中存在大量的远程内存读写导致GC性能降低的问题,对GC过程的各个阶段进行分析与研究,提出了一种基于NUMA结构的高效实时稳定的GC算法。该算法首先基于NUMA结构改进传统分代GC机制的堆空间布局,然后通过控制GC过程中扫描活跃对象阶段的初始根对象选取、动态负载均衡阶段截取任务队列的选取以及复制活跃对象阶段对象复制位置的选取,大大减少GC过程中的远程访问次数。这种改进的GC机制对所有NUMA结构具有通用性。以Godson-3处理器的NUMA平台为例进行的实验结果显示,优化的GC机制极大地缩短了GC的时间,而且提高了应用程序的性能以及稳定性。在SPECjvm2008测试中,GC时间平均缩短了14.6%(GC总时间缩短4.1%-41.58%),应用程序的性能平均提升了4.68%(最高提升17.8%),应用程序的性能稳定性提升了76.2%。 In order to solve a non-uniform memory access architecture (NUMA) ' s performance degradation in garbage collection (GC) caused by a large amount of remote access during GC, each phase of the GC process was analyzed and studied, and a high-efficient, real-time ana stable GC algorithm was proposed for NUMA. The algorithm im- proves the traditional generational GC mechanism' s heap space based on the non-uniform memory access architec- ture first, and then, greatly decreases the number of remote access in the course of GC by controlling the selection of initial root objects during the live object scanning phase, the stealing task queue in the phase of dynamic load balance, and the object copying location during the procedure of copying live objects. The advanced GC algorithm can be applied to all NUMA platforms. The final results of the experiments on the Godson-3 NUMA platform show that the proposed algorithm can reduce the stop-the-world (STW) time during GC, and enhance the performance and stability of the application program. For the SpecJVM2008 benchmarks, the new algorithm averagely reduced the STW time by 14.6% (reduced the total time by 4.1% to 41.58% ), averagely increased the performance of the application program by 4.68% (the ceiling value was 17.8% ), and improved its stability by 76.2%.
出处 《高技术通讯》 CAS CSCD 北大核心 2015年第2期125-134,共10页 Chinese High Technology Letters
基金 国家"核高基"科技重大专项课题(2009ZX01028-002-003 2009ZX01029-001-003 2010ZX01036-001-002 2012ZX01029-001-002-002) 国家自然科学基金(61221062 61100163 61133004 61173001 61232009 6122204 61432016) 863计划(2012AA010901 2012AA011002 2012AA012202 2013AA014301)资助项目
关键词 非一致性内存访问架构(NUMA) 垃圾回收(GC) 分代GC 活跃对象 根对象 动态负载均衡 non-uniform memory access architecture (NUMA), garbage collection (GC), generational GC,live object, root object, dynamic load balance
  • 相关文献

参考文献17

  • 1Manchanda N. Non-Uniform Memory Access. http ://cs. nyu. edu/- lemcr/springl0/projects/NUMA, pdf: New York University, 2010.
  • 2WangHD.龙芯3A处理器用户手册.http://www.loongson, cn/uploadfile/cpumanual/Loongson3A1000 _ processor_ user _ manual _ P1 _ Vl. 14. pdf: Loo-ngson Technology, 2014.
  • 3Ogasawara T. NUMA-aware memory manager with domi- nant-thread-based copying GC. In: Object Oriented Pro- gramming, Systems, Languages & Applications, Orlan- do, USA, 2009. 377-390.
  • 4Java SE Documentation. Memory Management in the Java HotSpot^TM Virtual Machine. http://www, oracle, com/ technetwork/java/javase/ -whitepapor- 150215. pdf:Sun Micmsystems, 2006.
  • 5Java SE Documentation. Java HotSpot? Virtual Machine Performance Enhancements. http://docs, oracle, cow./ javase/7/docs/technotes/guides/vm/performance-en- hancements-7, html#numa: Sun Micmsystems, 20- 09.
  • 6Printezis T, Detlefs D. A generational mostly concurrent garbage collector. In: Proceedings of the 2nd internation- al Symposium on Memory Management, Minneapolis,Minnesota, USA, 2000. 143-154.
  • 7Detlefs D, Flood C, HeUer S. Printezis T. Garbage first garbage collection. In: Proceedings of the 4th internation- al Symposium on Memory Management, Vancouver, Can- ada, 2004. 37-48.
  • 8Lieberman H, Hewitt C. A real-time garbage collector based on the lifetimes of objects. Communications of the ACM, 1983, 26(6) : 419-429.
  • 9Ungar D. Generation scavenging: A nondisruptive high performance storage reclamation algorithm. ACM Sigplan Notices, 1984, 19(5): 157-167.
  • 10Shuf Y, Gupta M, Bordawekar R, et al. Exploiting pro- lific types for memory management and optimizations. ACM SIGPIMN Notices, 2002, 37 ( 1 ) : 295-306.

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

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