ACM Home Page
Please provide us with feedback. Feedback
Region analysis and transformation for Java programs
Full text PdfPdf (262 KB)
Source International Symposium on Memory Management archive
Proceedings of the 4th international symposium on Memory management table of contents
Vancouver, BC, Canada
SESSION: Regions, compiler support table of contents
Pages: 85 - 96  
Year of Publication: 2004
ISBN:1-58113-945-4
Authors
Sigmund Cherem  Cornell University, Ithaca, NY
Radu Rugina  Cornell University, Ithaca, NY
Sponsors
ACM: Association for Computing Machinery
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 1,   Downloads (12 Months): 47,   Citation Count: 17
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1029873.1029884
What is a DOI?

ABSTRACT

This paper presents a region analysis and transformation framework for Java programs. Given an input Java program, the compiler automatically translates it into an equivalent output program with region-based memory management. The generated program contains statements for creating regions, allocating objects in regions, removing regions, and passing regions as parameters. As a particular case, the analysis can enable the allocation of objects on the stack.

Our algorithm uses a flow-insensitive and context-sensitive points-to analysis to partition the memory of the program into regions and to identify points-to relations between regions. It then performs a flow-sensitive, inter-procedural region liveness analysis to identify object lifetimes. Finally, it uses the computed region information to produce the region annotations in the output program. Our results indicate that, for several of our benchmarks, the transformation can allocate most of the data on stack or in short-lived regions, and can yield substantial memory savings.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
2
3
4
 
5
6
 
7
Brendon Cahoon. The Java Olden benchmarks. "www-ali.cs.umass.edu/~cahoon/olden".
8
9
 
10
M. Christiansen and P. Velschow. Region-based memory management in Java. Master's thesis, DIKU, University of Copenhagen, May 1998.
11
12
13
 
14
15
16
17
18
19
 
20
R. Rugina and S. Cherem. Region analysis for imperative programs. Technical Report CS TR2003-1914, Cornell University, October 2003.
21
22
23
 
24
25
 
26
Tim Wilkinson. Kaffe -- a free Java virtual machine. http://www.kaffe.org.

CITED BY  17

Collaborative Colleagues:
Sigmund Cherem: colleagues
Radu Rugina: colleagues