ACM Home Page
Please provide us with feedback. Feedback
Write barrier removal by static analysis
Full text PdfPdf (912 KB)
Source ACM SIGPLAN Notices archive
Volume 37 ,  Issue 4  (April 2002) table of contents
COLUMN: Technical correspondence table of contents
Pages: 32 - 41  
Year of Publication: 2002
ISSN:0362-1340
Authors
Karen Zee  Massachusetts Institute of Technology, Cambridge, MA
Martin Rinard  Massachusetts Institute of Technology, Cambridge, MA
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 2,   Downloads (12 Months): 8,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

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

ABSTRACT

We present a set of static analyses for removing write barriers in programs that use generational garbage collection. To our knowledge, these are the first analyses for this purpose. Our Intraprocedural analysis uses a flow-sensitive pointer analysis to locate variables that must point to the most recently allocated object, then eliminates write barriers on stores to objects accessed via one of these variables. The Callee Type Extension incorporates information about the types of objects allocated in invoked methods, while the Caller Context Extension incorporates information about the most recently allocated object at call sites that invoke the currently analyzed method. Results from our implemented system show that our Full Interprocedural analysis, which incorporates both extensions, can eliminate the majority of the write barriers in most of the programs in our benchmark set, producing modest performance improvements of up to 7% of the overall execution time. Moreover, by dynamically instrumenting the executable, we are able to show that for all but two of our nine benchmark programs, our analysis is close to optimal in the sense that it eliminates the write barriers for almost all store instructions observed not to create a reference from an older object to a younger object.


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
Josh Barnes and Piet Hut. A hierarchical O(N log N) force calculation algorithm. Nature, 1986.
 
3
Jon Louis Bentley. A parallel algorithm for constructing minimum spanning trees. In Journal of Algorithms, 1980.
 
4
 
5
6
 
7
8
 
9
L. Guibas and J. Stolfl. General subdivisions and Voronoi diagrams. ACM Transactions on Graphics, 1985.
 
10
Urs Hölzle. A fast write barrier for generational garbage collectors. In OOPSLA '93 Garage Collection Workshop, 1993.
 
11
Antony L. Hosking and Richard L. Hudson. Remembered sets can also play cards. In OOPSLA '93 Garbage Collection Workshop, 1993.
12
 
13
 
14
Richard M. Karp. Probabilistic analysis of partitioning algorithms for the traveling-salesman problem in the plane. Mathematics of Operations Research, 1977.
 
15
G. Lomow, J. Cleary, B. Unger, and D. West. A performance study of Time Warp. In Proceedings of the SCS Multiconference on Distributed Simulation, pages 50-55, San Diego, California, 1988.
16
 
17
Hanan Samet. Computing perimeters of regions in images represented by quadtrees. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1981.
18
 
19
Benjamin Zorn. Barrier methods for garbage collection. Technical Report CU-CS-494-90, 1990.

Collaborative Colleagues:
Karen Zee: colleagues
Martin Rinard: colleagues