Quantitative dynamic-memory analysis for Java
Space- and time-predictability are hard to achieve for object-oriented languages with automated dynamic-memory management. Although there has been significant work to design APIs, such as the Real-Time Specification for Java (RTSJ), and to implement garbage collectors to enable real-time performance...
Guardado en:
Autores principales: | , , , , |
---|---|
Formato: | JOUR |
Materias: | |
Acceso en línea: | http://hdl.handle.net/20.500.12110/paper_15320626_v23_n14_p1665_Garbervetsky |
Aporte de: |
id |
todo:paper_15320626_v23_n14_p1665_Garbervetsky |
---|---|
record_format |
dspace |
spelling |
todo:paper_15320626_v23_n14_p1665_Garbervetsky2023-10-03T16:21:30Z Quantitative dynamic-memory analysis for Java Garbervetsky, D. Yovine, S. Braberman, V. Rouaux, M. Taboada, A. Java real-time quantitative memory requirements scoped-memory static analysis Aircraft collisions Analysis techniques Closed form Compile time Dynamic memory Free memory Garbage collectors Java real-time Memory organizations Memory requirements Memory usage Object-oriented languages Program variables Real time performance Real-time specification for javas scoped-memory Semi-automatics Space analysis Upper Bound Aircraft accidents Automatic programming Java programming language Static analysis Time series analysis Space- and time-predictability are hard to achieve for object-oriented languages with automated dynamic-memory management. Although there has been significant work to design APIs, such as the Real-Time Specification for Java (RTSJ), and to implement garbage collectors to enable real-time performance, quantitative space analysis is still in its infancy. This work presents the integration of a series of compile-time analysis techniques to help predicting quantitative memory usage. In particular, we focus on providing tool assistance for identifying RTSJ scoped-memory regions, their sizes, and overall memory usage. First, the tool-suite synthesizes a memory organization where regions are associated with methods. Second, it infers their sizes in parametric closed form in terms of relevant program variables. Third, it exhibits a parametric upper bound on the amount of available free memory required to execute a method. The experiments carried out with a RTSJ benchmark, a real-time aircraft collision detector, show that semi-automatic, tool-assisted generation of scoped-based code is both helpful and doable. © 2010 John Wiley & Sons, Ltd. Fil:Garbervetsky, D. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. Fil:Braberman, V. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. Fil:Rouaux, M. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. Fil:Taboada, A. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. JOUR info:eu-repo/semantics/openAccess http://creativecommons.org/licenses/by/2.5/ar http://hdl.handle.net/20.500.12110/paper_15320626_v23_n14_p1665_Garbervetsky |
institution |
Universidad de Buenos Aires |
institution_str |
I-28 |
repository_str |
R-134 |
collection |
Biblioteca Digital - Facultad de Ciencias Exactas y Naturales (UBA) |
topic |
Java real-time quantitative memory requirements scoped-memory static analysis Aircraft collisions Analysis techniques Closed form Compile time Dynamic memory Free memory Garbage collectors Java real-time Memory organizations Memory requirements Memory usage Object-oriented languages Program variables Real time performance Real-time specification for javas scoped-memory Semi-automatics Space analysis Upper Bound Aircraft accidents Automatic programming Java programming language Static analysis Time series analysis |
spellingShingle |
Java real-time quantitative memory requirements scoped-memory static analysis Aircraft collisions Analysis techniques Closed form Compile time Dynamic memory Free memory Garbage collectors Java real-time Memory organizations Memory requirements Memory usage Object-oriented languages Program variables Real time performance Real-time specification for javas scoped-memory Semi-automatics Space analysis Upper Bound Aircraft accidents Automatic programming Java programming language Static analysis Time series analysis Garbervetsky, D. Yovine, S. Braberman, V. Rouaux, M. Taboada, A. Quantitative dynamic-memory analysis for Java |
topic_facet |
Java real-time quantitative memory requirements scoped-memory static analysis Aircraft collisions Analysis techniques Closed form Compile time Dynamic memory Free memory Garbage collectors Java real-time Memory organizations Memory requirements Memory usage Object-oriented languages Program variables Real time performance Real-time specification for javas scoped-memory Semi-automatics Space analysis Upper Bound Aircraft accidents Automatic programming Java programming language Static analysis Time series analysis |
description |
Space- and time-predictability are hard to achieve for object-oriented languages with automated dynamic-memory management. Although there has been significant work to design APIs, such as the Real-Time Specification for Java (RTSJ), and to implement garbage collectors to enable real-time performance, quantitative space analysis is still in its infancy. This work presents the integration of a series of compile-time analysis techniques to help predicting quantitative memory usage. In particular, we focus on providing tool assistance for identifying RTSJ scoped-memory regions, their sizes, and overall memory usage. First, the tool-suite synthesizes a memory organization where regions are associated with methods. Second, it infers their sizes in parametric closed form in terms of relevant program variables. Third, it exhibits a parametric upper bound on the amount of available free memory required to execute a method. The experiments carried out with a RTSJ benchmark, a real-time aircraft collision detector, show that semi-automatic, tool-assisted generation of scoped-based code is both helpful and doable. © 2010 John Wiley & Sons, Ltd. |
format |
JOUR |
author |
Garbervetsky, D. Yovine, S. Braberman, V. Rouaux, M. Taboada, A. |
author_facet |
Garbervetsky, D. Yovine, S. Braberman, V. Rouaux, M. Taboada, A. |
author_sort |
Garbervetsky, D. |
title |
Quantitative dynamic-memory analysis for Java |
title_short |
Quantitative dynamic-memory analysis for Java |
title_full |
Quantitative dynamic-memory analysis for Java |
title_fullStr |
Quantitative dynamic-memory analysis for Java |
title_full_unstemmed |
Quantitative dynamic-memory analysis for Java |
title_sort |
quantitative dynamic-memory analysis for java |
url |
http://hdl.handle.net/20.500.12110/paper_15320626_v23_n14_p1665_Garbervetsky |
work_keys_str_mv |
AT garbervetskyd quantitativedynamicmemoryanalysisforjava AT yovines quantitativedynamicmemoryanalysisforjava AT brabermanv quantitativedynamicmemoryanalysisforjava AT rouauxm quantitativedynamicmemoryanalysisforjava AT taboadaa quantitativedynamicmemoryanalysisforjava |
_version_ |
1807318838725836800 |