Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
An adaptive tenuring policy for generation scavengers
Ungar D., Jackson F. ACM Transactions on Programming Languages and Systems14 (1):1-27,1992.Type:Article
Date Reviewed: Oct 1 1992

In systems with automatic garbage collection, most garbage is relatively short-lived. An effective approach for reducing garbage collection costs is to perform frequent, relatively cheap collections on recently allocated storage objects, and to perform relatively expensive but infrequent collections on older objects. Generational scavenging is an implementation of this idea, where active objects are classified into generations according to their age. The word tenuring refers to the promotion of an object from the young generation to the old generation in a two-generation scheme.

The authors instrumented a Smalltalk system to collect data on how long each object remains in use. They obtained extensive data for several Smalltalk programs and analyzed how well generational scavenging would work as its parameters were varied. They discovered that different programs display widely differing behaviors and that, to be effective, the scavenging algorithm must use a feedback mechanism to adapt itself.

This well-written paper contains much background information and long detailed discussions on the practical issues involved in instrumenting a system to obtain object lifetime information. I found this part of the paper much more interesting than the adaptive scavenging policy that was the main result. My only critical comment is that all the data came from a Smalltalk system. It is unclear whether similar object lifetime characteristics would be observed with application programs implemented in other languages and used in other environments.

Reviewer:  R. Nigel Horspool Review #: CR115913
Bookmark and Share
 
Allocation/ Deallocation Strategies (D.4.2 ... )
 
 
Interactive Environments (D.2.6 ... )
 
 
Run-Time Environments (D.3.4 ... )
 
 
Smalltalk (D.3.2 ... )
 
 
Language Classifications (D.3.2 )
 
 
Processors (D.3.4 )
 
  more  
Would you recommend this review?
yes
no
Other reviews under "Allocation/Deallocation Strategies": Date
Optimal prepaging and font caching
Fuchs D., Knuth D. ACM Transactions on Programming Languages and Systems 7(1): 62-79, 1985. Type: Article
Feb 1 1986
Managing stored voice in the Etherphone system
Terry D., Swinehart D. ACM Transactions on Computer Systems 6(1): 3-27, 1988. Type: Article
Apr 1 1989
Analysis of a cyclic placement scheme
Page I. The Computer Journal 27(1): 18-25, 1984. Type: Article
Sep 1 1985
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy