GC performance - was Re: [gclist] GC topics
boehm.PARC@xerox.com
boehm.PARC@xerox.com
Thu, 22 Feb 1996 15:18:33 PST
David wrote:
" Old versions of the B-W compiler kept all the mark bits clumped
together at the beginning of the page containing the object, for
the small objects, so the address of the bits (2 per object) is
formed by something like ..."
Just to avoid misunderstandings of a minor point in a good description:
1) Yes, we (Alan Demers and I) did that.
2) Nowadays it would be a bad idea. Don't copy it. The most serious problem
is that all the mark bits and other header information contend for a very small
number of cache lines, since corresponding fields have the identical 12 or so
least significant bits in the address. It worked OK on Sun2s :-).
For a variety of reasons, our current collector has a somewhat more complex
data structure that takes a few more cycles to access.
Hans