MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Predicting references to dynamically allocated objects (1997) [12 citations — 4 self]

Download:
pdf | ps
by Matthew L. Seidl, Matthew L. Seidl, Matthew L. Seidl, Benjamin G. Zorn, Benjamin G. Zorn, Benjamin G. Zorn
http://www.cs.colorado.edu/~seidl/papers/TR-ref-pred.ps
Add To MetaCart

Abstract:

Dynamic storage allocation has become increasingly important in many applications, in part due to the use of the object-oriented paradigm. At the same time, processor architectures are including deeper cache memory hierarchies to hide the increasing latency to main memory. In this paper, we investigate efforts to predict which heap objects will be highly referenced at the time they are allocated. Our approach uses profile-based optimization, and considers a variety of different information sources present at the time of object allocation to predict the object's reference frequency. Our results, based on measurements of four allocation intensive programs, show that program references to heap objects are highly skewed and that our prediction methods can successfully predict the program objects that will be the most highly referenced. We show that using this technique, a large fraction of a program's heap references can be directed at a part of the heap that is small enough to fit in the cache (e.g., 8--64 kilobytes).

Citations

664 ATOM: A system for building customized program analysis tools – Srivastava, Eustace - 1994
186 Efficient path profiling – Ball, Larus - 1996
175 The Java Language Specification. The Java Series – Gosling, Joy, et al. - 1996
141 Program optimization for instruction caches – MCFARLING - 1989
129 A.: Garbage Collection in a Large Lisp System – Moon - 1984
81 Quantifying Behavioral Differences Between C and C++ Programs – Calder, Grunwald, et al. - 1994
81 Profile-Guided Receiver Class Prediction – Grove, Dean, et al. - 1995
70 Using lifetime predictors to improve memory allocation performance – Barrett, Zorn - 1993
70 Improving the cache locality of memory allocation – Grunwald, Zorn, et al. - 1993
56 Accurate static estimators for program optimization – Wagner, Maverick, et al. - 1994
51 Caching considerations for generational garbage collection – Wilson, Lam, et al. - 1992
45 Whole-Program Optimization of Object-Oriented Languages – Chambers, Dean, et al. - 1996
41 Memory subsystem performance of programs using copying garbage collection – Diwan, Tarditi, et al. - 1994
36 Improving locality of reference in a garbage-collecting memory management-system – Courts - 1988
36 E ective static-graph reorganization to improve locality in garbagecollected systems – Wilson, Lam, et al. - 1992
35 Cache performance of garbage-collected programs – Reinhold - 1993
33 The effect of garbage collection on cache performance – Zorn - 1991
24 Fast Fits: New Methods for Dynamic Storage Allocation – Stephenson - 1983
16 Fundamental Algorithms, volume 1 of The Art of – Knuth - 1973
16 Quantifying behavioral di erences between C and C++ programs – Calder, Grunwald, et al. - 1994
8 Predicting lifetimes in dynamically allocated memory – Cohn, Singh - 1996
3 Some empirical observations on program behavior with applications to program restructuring – Peachey, Bunt, et al. - 1985
2 The e#ect of garbage collection on cache performance. Computer Science – Zorn - 1991