From: Alexandre Buisse <[EMAIL PROTECTED]>
   Date: Tue, 26 Jul 2005 03:06:14 +0200

   I am sorry not to have told everyone before, but I discussed with leo
   on IRC and the scheme he originally envisionned is actually very close
   to NLDC and more simple : simply do the NLD pass at the same time than
   the marking pass. But the underlying idea of collecting the IGP cycles
   remains the same.
   There is also the problem of no wanting to mark the whole memory but
   only a given number of generations which is addresses this way.

This is sounding more and more like the CMUCL gencgc algorithm, which
uses what I understand is a classic approach.  Instead of an IGP list,
it write-protects all oldspace pages (hence my earlier question),
unprotecting them transparently when one is stored into, so that it only
needs to scan writable pages to look for newspace pointers.  It is my
intuition that this would be less overhead than an IGP list, but I
suspect this is data-dependent, and would take benchmarking to prove.

   > Even an outline of a proof would help to identify hidden assumptions.
   > Especially valuable would be to prove bounds on storage and time costs.
   > But of course it's your time, so it's your call . . .

   Well, I'll try to provide a sketch of it, but not now.

That's OK; if Leo believes it will work, then I'm sure it will.  My
quibbles were about speed and complexity, and I don't want to distract
you with unproven assertions about things that might not matter.

   Actually, I had some laptop problems which should hopefully be fixed
   soon. As time is beginning to run short (remember that the GC should
   be functional by Sept. 1st), I'll rewrite GMC for dummies very soon
   (tomorrow ?) and hope to begin coding just after that.

   Regards,
   Alexandre

Great; I look forward to it.

                                        -- Bob

Reply via email to