[gclist] Regions as a GC solution

Dobes Vandermeer Dobes Vandermeer <dobes-dated-1057516680.6a410f@dobesland.com>
Fri, 06 Jun 2003 11:38:02 -0700


I like region allocators - they can allocate objects as soon as they are
no longer going to be used.  An automatic region inference system makes
regions both efficient in programmer-time and run-time.  However, region
allocators are, as far as I know, only suitable for objects whose
lifetime is local -- objects which are not stored in global data
structures and do not survive multiple iterations of the main runloop of
the program.  This turns them into a sort of optimization for other
garbage collectors -- memory can be safely freed "sooner", but you still
need the other collectors if you want to avoid leaks in the long term.

The great thing about regions is that they can be inserted automatically
using a static analyses.  Are there any systems which are able to
collect objects in the immortal regions, or perhaps have some kind of
clever overlapping region system that avoids having immortal regions
altogether?

Thoughts/references appreciated.

CU
Dobes