ACM Home Page
Please provide us with feedback. Feedback
Digital Library logoTake a look at the new version of this page: [ beta version ]. Tell us what you think.
Uniqueness inference for compile-time object deallocation
Full text PdfPdf (263 KB)
Source
International Symposium on Memory Management archive
Proceedings of the 6th international symposium on Memory management table of contents
Montreal, Quebec, Canada
SESSION: Static analysis and verification table of contents
Pages: 117 - 128  
Year of Publication: 2007
ISBN:978-1-59593-893-0
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): 4,   Downloads (12 Months): 32,   Citation Count: 2
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/1296907.1296923
What is a DOI?

ABSTRACT

This paper presents an analysis and transformation for individual object reclamation in Java programs. First, we propose a uniqueness inference algorithm that identifies variables and object fields that hold unique references. The algorithm performs an intra-procedural analysis of each method, and then builds and solves a set of inter-procedural uniqueness dependencies to find the global solution. Second, our system uses the uniqueness information to automatically instrument programs with explicit deallocation of individual objects. A key feature of the transformation is its ability to deallocate entire heap structures, including recursive structures, when their root objects are freed. This is achieved by generating object destructors that recursively free all of the unique object fields. Our experiments show that the analysis is effective at reclaiming a large fraction of the objects at a low analysis cost.


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
S. Cherem and R. Rugina. A practical escape and effect analysis for building lightweight method summaries. In Proceedings of the International Conference on Compiler Construction, Braga, Portugal, March 2007.
7
 
8
GNU Classpath. http://www.gnu.org/software/classpath/.
 
9
10
11
12
13
 
14
15
16
 
17
R. Shaham, E. Yahav, E. K. Kolodner, and M. Sagiv. Establishing local temporal heap safety properties with applications to compiletime memory management. In Proceedings of the International Static Analysis Symposium, San Diego, CA, June 2003.
18
 
19
 
20
P. Wadler. Linear types can change the world! In M. Broy and C. Jones, editors, Working Conference on Programming Concepts and Methods, pages 347--359. North Holland, 1990.
21
 
22


Collaborative Colleagues:
Sigmund Cherem: colleagues
Radu Rugina: colleagues