[gclist] 64 bit machines and conservatism

Marc Feeley feeley@IRO.UMontreal.CA
Mon, 15 Dec 1997 13:13:13 -0500 (EST)

Concerning 64 bit machines and conservative GC, one shouldn't forget
that what really matters is the number of bits in a pointer, not the
size of the machine word.  For most (all?) applications out there a 32
bit address space is still sufficient so there is no need to use 64
bit pointers.  After all if most of your data is pointers then there
is a savings of a factor of 2 in space (and cache efficiency) to be
had by using 32 bit pointers.  The C compilers I have come across on
64 bit machines all have a flag to select 32 bit pointers (for example
"-taso" on digital UNIX).  I have used this for my Scheme compiler
(Gambit-C) on DEC Alphas with a gain in efficiency of roughly 15%
on memory intensive benchmarks.