Affiliation:
1. Complutense University of Madrid, Madrid, Spain
Abstract
The accurate prediction of program's memory requirements is a critical component in software development. Existing heap space analyses either do not take deallocation into account or adopt specific models of garbage collectors which do not necessarily correspond to the actual memory usage. We present a novel approach to inferring upper bounds on memory requirements of Java-like programs which is
parametric
on the notion of
object lifetime
, i.e., on when objects become collectible. If objects lifetimes are inferred by a reachability analysis, then our analysis infers accurate upper bounds on the memory consumption for a
reachability
-based garbage collector. Interestingly, if objects lifetimes are inferred by a
heap liveness
analysis, then we approximate the program minimal memory requirement, i.e., the peak memory usage when using an optimal garbage collector which frees objects as soon as they become dead. The key idea is to integrate information on objects lifetimes into the process of generating the
recurrence equations
which capture the memory usage at the different program states. If the heap size limit is set to the memory requirement inferred by our analysis, it is ensured that execution will not exceed the memory limit with the only assumption that garbage collection works when the limit is reached. Experiments on Java bytecode programs provide evidence of the feasibility and accuracy of our analysis.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference24 articles.
1. Lecture Notes in Computer Science;Albert E.,2007
2. Heap space analysis for java bytecode
3. Live heap space analysis for languages with garbage collection
4. Elvira
Albert Puri
Arenas Samir
Genaim and
German
Puebla
.
Automatic Inference of Upper Bounds for Recurrence Relations in Cost Analysis. In María Alpuente and Germán Vidal editors Static Analysis 15th International Symposium SAS
2008 Valencia Spain July 15-17 2008 Proceedings volume
5079
of
Lecture Notes in Computer Science pages
221
--
237
.
Springer-Verlag July 2008. 10.1007/978-3-540-69166-2_15 Elvira Albert Puri Arenas Samir Genaim and German Puebla. Automatic Inference of Upper Bounds for Recurrence Relations in Cost Analysis. In María Alpuente and Germán Vidal editors Static Analysis 15th International Symposium SAS 2008 Valencia Spain July 15-17 2008 Proceedings volume 5079 of Lecture Notes in Computer Science pages 221--237. Springer-Verlag July 2008. 10.1007/978-3-540-69166-2_15
5. H. Boehm. An artificial garbage collection benchmark. http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_bench.html. H. Boehm. An artificial garbage collection benchmark. http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_bench.html.
Cited by
3 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Estimating GPU memory consumption of deep learning models;Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering;2020-11-07
2. Static analysis of cloud elasticity;Science of Computer Programming;2017-11
3. Static analysis of cloud elasticity;Proceedings of the 17th International Symposium on Principles and Practice of Declarative Programming;2015-07-14