Sciweavers

OOPSLA
2004
Springer

Finding your cronies: static analysis for dynamic object colocation

14 years 4 months ago
Finding your cronies: static analysis for dynamic object colocation
This paper introduces dynamic object colocation, an optimization to reduce copying costs in generational and other incremental garbage collectors by allocating connected objects together in the same space. Previous work indicates that connected objects belong together because they often have similar lifetimes. Generational collectors, however, allocate all new objects in a nursery space. If these objects are connected to data structures residing in the mature space, the collector must copy them. Our solution is a cooperative optimization that exploits compiler analysis to make runtime allocation decisions. The compiler analysis discovers potential object connectivity for newly allocated objects. It then replaces these allocations with calls to coalloc, which takes an extra parameter called the colocator object. At runtime, coalloc determines the location of the colocator and allocates the new object together with it in either the nursery or mature space. Unlike pretenuring, colocation...
Samuel Z. Guyer, Kathryn S. McKinley
Added 02 Jul 2010
Updated 02 Jul 2010
Type Conference
Year 2004
Where OOPSLA
Authors Samuel Z. Guyer, Kathryn S. McKinley
Comments (0)