[gclist] GC topics

Darius Blasband darius@phidani.be
Tue, 20 Feb 1996 09:09:58 +0100 (MET)


>  -- does anyone have any practical numbers on how much more or less storage
>     GC'ed environments use than non-GC'ed.  On the one hand, there's always
>     some dead storage not collected yet, but on the other hand there's no
>     storage leaks

No. I have no figures on the cost in terms of storage of GC, but we have a 
complete performance analysis on the current implementation of the YAFL
programming language, and the results are interesting: if we remove all
reference to GC from the generated code, the total execution time of
the system drops to 70-80% of its original execution time (of course,
this is only for analysis purposes, such a system is barely usable, since
it just allocates memory and then crashes after a while...).

So, if keeping track of accessible references at all times cost 20% of
our execution time (which we consider as reasonable), what is the gain,
that is, how efficient is a precise GC when compared with a 
conservative one which must perform complex heuristics to determine
whether a given memory area happens to be a pointer or not. Does anyone
have any data on this ?

We consider this performance overhead acceptable, since it guarantees
a quasi-deterministic behaviour and is utterly portable, since it
does not rely on any platform-specific feature (YAFL has even been ported
to IBM mainframes).

Any comment ?

Darius