Waste not, want not

Author:

Hertz Matthew1,Kane Stephen1,Keudel Elizabeth1,Bai Tongxin2,Ding Chen2,Gu Xiaoming2,Bard Jonathan E.3

Affiliation:

1. Canisius College, Buffalo, NY, USA

2. University of Rochester, Rochester, NY, USA

3. SUNY-Buffalo, Buffalo, NY, USA

Abstract

To achieve optimal performance, garbage-collected applications must balance the sizes of their heaps dynamically. Sizing the heap too small can reduce throughput by increasing the number of garbage collections that must be performed. Too large a heap, however, can cause the system to page and drag down the overall throughput. In today's multicore, multiprocessor machines, multiple garbage-collected applications may run simultaneously. As a result, each virtual machine (VM) must adjust its memory demands to reflect not only the behavior of the application it is running, but also the behavior of the peer applications running on the system. We present a memory management system that enables VMs to react to memory demands dynamically. Our approach allows the applications' heaps to remain small enough to avoid the negative impacts of paging, while still taking advantage of any memory that is available within the system. This memory manager, which we call Poor Richard's Memory Manager , focuses on optimizing overall system performance by allowing applications to share data and make system-wide decisions. We describe the design of our memory management system, show how it can be added to existing VMs with little effort, and document that it has almost no impact on performance when memory is plentiful. Using both homogenous and heterogenous Java workloads, we then show that Poor Richard's memory manager improves average performance by up to a factor 5.5 when the system is paging. We further show that this result is not specific to any garbage collection algorithm, but that this improvement is observed for every garbage collector on which we test it. We finally demonstrate the versatility of our memory manager by using it to improve the performance of a conservative whole-heap garbage collector used in executing .Net applications.

Publisher

Association for Computing Machinery (ACM)

Subject

Computer Graphics and Computer-Aided Design,Software

Reference47 articles.

1. Bug ID: 4694058 Allow JRE to return unused memory to the system heap. Available at http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4694058. Bug ID: 4694058 Allow JRE to return unused memory to the system heap. Available at http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4694058.

2. Garbage collector ergonomics. Available at http://download.oracle.com/javase/6/docs/technotes/guides/vm/gc-ergonomics.html. Garbage collector ergonomics. Available at http://download.oracle.com/javase/6/docs/technotes/guides/vm/gc-ergonomics.html.

3. getrusage(3c) - solaris man page. Available at http://download.oracle.com/docs/cd/E19963-01/821-1465/getrusage-3c/index.html. getrusage(3c) - solaris man page. Available at http://download.oracle.com/docs/cd/E19963-01/821-1465/getrusage-3c/index.html.

4. proc(5) - process info pseudo-filesystem - Linux man page. Available at http://linux.die.net/man/5/proc. proc(5) - process info pseudo-filesystem - Linux man page. Available at http://linux.die.net/man/5/proc.

5. Tuning the memory management system. Available at http://download.oracle.com/docs/cd/E15289_01/doc.40/e15060/memman.htm#i1092162. Tuning the memory management system. Available at http://download.oracle.com/docs/cd/E15289_01/doc.40/e15060/memman.htm#i1092162.

Cited by 5 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. Dynamic vertical memory scalability for OpenJDK cloud applications;Proceedings of the 2018 ACM SIGPLAN International Symposium on Memory Management;2018-06-18

2. Speculative Memory Checkpointing;Proceedings of the 16th Annual Middleware Conference;2015-11-24

3. The judgment of forseti: economic utility for dynamic heap sizing of multiple runtimes;Proceedings of the 2015 International Symposium on Memory Management;2015-06-14

4. A Comparative Look at Adaptive Memory Management in Virtual Machines;2013 IEEE 5th International Conference on Cloud Computing Technology and Science;2013-12

5. An equation-based Heap Sizing Rule;Performance Evaluation;2013-11

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3