Artículo

Garbervetsky, D.; Yovine, S.; Braberman, V.; Rouaux, M.; Taboada, A. "Quantitative dynamic-memory analysis for Java" (2011) Concurrency Computation Practice and Experience. 23(14):1665-1678
Estamos trabajando para incorporar este artículo al repositorio
Consulte el artículo en la página del editor
Consulte la política de Acceso Abierto del editor

Abstract:

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.

Registro:

Documento: Artículo
Título:Quantitative dynamic-memory analysis for Java
Autor:Garbervetsky, D.; Yovine, S.; Braberman, V.; Rouaux, M.; Taboada, A.
Filiación:Departamento de Computación, FCEyN, Ciudad Universitaria, (C1428EGA) Buenos Aires, Argentina
Palabras clave: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
Año:2011
Volumen:23
Número:14
Página de inicio:1665
Página de fin:1678
DOI: http://dx.doi.org/10.1002/cpe.1656
Título revista:Concurrency Computation Practice and Experience
Título revista abreviado:Concurrency Comput. Pract. Exper.
ISSN:15320626
CODEN:CCPEB
Registro:https://bibliotecadigital.exactas.uba.ar/collection/paper/document/paper_15320626_v23_n14_p1665_Garbervetsky

Referencias:

  • Bacon, D.F., Cheng, P., Rajan, V.T., Controlling fragmentation and space consumption in the metronome, a real-time garbage collector for java (2003) LCTES '03: Proceedings of the 2003 ACM SIGPLAN Conference on Language, Compiler, and Tool for Embedded Systems, pp. 81-92. , ACM Press: New York, NY, U.S.A
  • Henriksson, R., (1998) Scheduling Garbage Collection in Embedded Systems, , PhD Thesis, Lund Institute of Technology
  • Siebert, F., Hard real-time garbage-collection in the jamaica virtual machine (1999) Proceedings of the Sixth International Conference on Real-Time Computing Systems and Applications, p. 96. , RTCSA, Hong Kong, China
  • Tofte, M., Talpin, J.-P., Region-Based Memory Management (1997) Information and Computation, 132 (2), pp. 109-176
  • Gay, D., Aiken, A., (2001) Language Support for Regions, PLDI 01, pp. 70-80. , Utah, U.S.A
  • Gosling, J., Bollella, G., (2000) The Real-time Specification for Java, , Addison-Wesley: Reading, MA
  • Pizlo, F., Fox, J., Holmes, D., Vitek, J., Real-time Java scoped memory: Design patterns and semantics (2004) Proceedings of the IEEE International Symposium on Object-oriented Real-Time Distributed Computing (ISORC), , Vienna, Austria, May
  • Salcianu, A., Rinard, M., (2001) Pointer and Escape Analysis for Multithreaded Programs, 36, pp. 12-23. , PPoPP 01 Utah, U.S.A
  • Salagnac, G., Yovine, S., Garbervetsky, D., Fast escape analysis for region-based memory management (2005) Electronic Notes in Theoretical Computer Science, 131, pp. 99-110. , DOI 10.1016/j.entcs.2005.01.026, PII S1571066105002616, Proceedings of the First International Workshop on Abstract Interpretation of Object-oriented Languages (AIOOL 2005)
  • Ferrari, A., Garbervetsky, D., Braberman, V., Listingart, P., Yovine, S., Jscoper: Eclipse support for research on scoping and instrumentation for real time java applications (2005) Eclipse '05: Proceedings of the 2005 OOPSLA Workshop on Eclipse Technology EXchange, pp. 50-54. , ACM Press: New York, NY, U.S.A
  • Braberman, V., Garbervetsky, D., Yovine, S., A static analysis for synthesizing parametric specifications of dynamic memory consumption (2006) Journal of Object Technology, 5 (5), pp. 31-58. , http://www.jot.fm/issues/issue_2006_06/article2.pdf, ECOOP 2005 Workshop FTfJP
  • Braberman, V., Fernández, F., Garbervetsky, D., Yovine, S., Parametric prediction of heap memory requirements (2008) ISMM '08: Proceedings of the Seventh International Symposium on Memory Management, pp. 141-150. , ACM: New York
  • Kalibera, T., Hagelberg, J., Pizlo, F., Plsek, A., Titzer, B., Vitek, J., Cdx: A family of real-time java benchmarks (2009) JTRES '09: Proceedings of the Seventh International Workshop on Java Technologies for Real-Time and Embedded Systems, pp. 41-50. , ACM: New York, NY, U.S.A
  • Garbervetsky, D., Nakhli, C., Yovine, S., Zorgati, H., (2004) Program Instrumentation and Run-time Analysis of Scoped Memory in Java, , RV 04, ETAPS, ENTCS, Barcelona, Spain, April
  • Salagnac, G., Rippert, C., Yovine, S., Semi-automatic region-based memory management for real-time java embedded systems (2007) Proceedings of 13th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA'07), , Daegu, Korea, August
  • Clauss, P., Counting solutions to linear and nonlinear constraints through ehrhart polynomials (1996) Applications to Analyze and Transform Scientific Programs, ICS'96, pp. 278-285. , Philadelphia, U.S.A
  • Nielson, F., Nielson, H.R., Hankin, C., (1999) Principles of Program Analysis, , Springer: Secaucus, NJ, U.S.A
  • Verdoolaege, S., Seghir, R., Beyls, K., Analytical computation of Ehrhart polynomials: Enabling more compiler analyses and optimizations (2004) CASES 2004: International Conference on Compilers, Architecture, and Synthesis for Embedded Systems, pp. 248-258. , CASES 2004: International Conference on Compilers, Architecture, and Synthesis for Embedded Systems
  • Clauss, P., Tchoupaeva, I., A symbolic approach to bernstein expansion for program analysis and optimization (2004) 13th International Conference on Compiler Construction, CC 2004, pp. 120-133. , (Lecture Notes in Computer Science, 2985), Duesterwald E. (ed.). Springer: Berlin
  • Alpern, B., Augart, S., Blackburn, S.M., Butrico, M.A., Cocchi, A., Cheng, P., Dolby, J., Trapp, M., The Jikes research virtual machine project: Building an open-source research community (2005) IBM Systems Journal, 44 (2), pp. 399-418
  • Deters, M., Cytron, R.K., Automated discovery of scoped memory regions for real-time java (2002) ISMM 02, pp. 25-35. , Berlin, Germany
  • Cherem, S., Rugina, R., Region analysis and transformation for Java programs (2004) ISMM'04, , Vancouver, Canada
  • Albert, E., Arenas, P., Genaim, S., Puebla, G., Zanardini, D., Cost analysis of Java bytecode (2007) Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 4421, pp. 157-172. , Programming Languages and Systems - 16th European Symposium on Programming, ESOP 2007. Held as Part of the Joint European Conferences on Theory and Practics of Software, ETAPS 2007, Proceedings
  • Albert, E., Genaim, S., Gómez-Zamalloa, M., Live heap space analysis for languages with garbage collection (2009) ISMM, pp. 129-138. , Dublin, Ireland
  • Chin, W.N., Nguyen, H.H., Popeea, C., Qin, S., Analysing memory resource bounds for low-level programs (2008) Proceedings of the International Symposium on Memory Management (ISMM '08), pp. 151-160. , Tucson, Arizona, June
  • Gulwani, S., Jain, S., Koskinen, E., Control-flow refinement and progress invariants for bound analysis (2009) PLDI '09: Proceedings of the 2009 ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 375-385. , ACM: New York, NY, U.S.A
  • Garbervetsky, D., (2007) Parametric Specification of Dymamic Memory Utilization, , PhD Thesis, DC, FCEyN, UBA, November
  • Chin, W., Nguyen, H.H., Qin, S., Rinard, M., Memory usage verification for oo programs (2005) SAS 05, , London, U.K
  • Gulwani, S., Mehra, K.K., Chilimbi, T., Speed: Precise and efficient static estimation of program computational complexity (2009) POPL '09: Proceedings of the 36th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 127-139. , ACM: New York, NY, U.S.A
  • Flanagan, C., Leino, K., Lillibridge, M., Nelson, C., Saxe, J., Stata, R., Extended static checking for Java (2002) PLDI 02, , Berlin, Germany
  • Rouaux, M., Garbervetsky, D., (2009) Predicción Paramétrica de Requerimientos de Memoria: Especificación Modular, , Master's Thesis, Departamento de Computación, FCEyN, UBA, August
  • Andreae, C., Coady, Y., Gibbs, C., Noble, J., Vitek, J., Zhao, T., Scoped types and aspects for real-time Java memory management (2007) Real-Time Systems, 37 (1), pp. 1-44. , DOI 10.1007/s11241-007-9024-3
  • Boyapati, C., Salcianu, A., Beebee, Jr.W., Rinard, M., Ownership types for safe region-based memory management in real-time java (2003) PLDI '03: Proceedings of the ACM SIGPLAN 2003 Conference on Programming Language Design and Implementation, pp. 324-337. , ACM: New York, NY, U.S.A
  • Nilsen, K., Improving abstraction, encapsulation, and performance within mixed-mode real-time Java applications (2007) Proceedings of the 5th International Workshop on Java Technologies for Real-Time and Embedded Systems, JTRES 2007, pp. 13-22. , DOI 10.1145/1288940.1288943, Proceedings of the 5th International Workshop on Java Technologies for Real-Time and Embedded Systems, JTRES 2007

Citas:

---------- APA ----------
Garbervetsky, D., Yovine, S., Braberman, V., Rouaux, M. & Taboada, A. (2011) . Quantitative dynamic-memory analysis for Java. Concurrency Computation Practice and Experience, 23(14), 1665-1678.
http://dx.doi.org/10.1002/cpe.1656
---------- CHICAGO ----------
Garbervetsky, D., Yovine, S., Braberman, V., Rouaux, M., Taboada, A. "Quantitative dynamic-memory analysis for Java" . Concurrency Computation Practice and Experience 23, no. 14 (2011) : 1665-1678.
http://dx.doi.org/10.1002/cpe.1656
---------- MLA ----------
Garbervetsky, D., Yovine, S., Braberman, V., Rouaux, M., Taboada, A. "Quantitative dynamic-memory analysis for Java" . Concurrency Computation Practice and Experience, vol. 23, no. 14, 2011, pp. 1665-1678.
http://dx.doi.org/10.1002/cpe.1656
---------- VANCOUVER ----------
Garbervetsky, D., Yovine, S., Braberman, V., Rouaux, M., Taboada, A. Quantitative dynamic-memory analysis for Java. Concurrency Comput. Pract. Exper. 2011;23(14):1665-1678.
http://dx.doi.org/10.1002/cpe.1656