emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

new GC


From: Dave Love
Subject: new GC
Date: Mon, 16 Jun 2003 22:55:24 +0100
User-agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.2 (gnu/linux)

There's work on a new GC system installed on CVS branch `Boehm-GC'
which anyone interested in GC and fairly knowledgeable about GC might
like to look at.  It still needs significant work, and I probably
won't have enough time to devote to it for a while.  There are some
disorganized and probably incomplete notes in the top-level README.GC.

It uses Boehm's fully conservative GC, which should be able to perform
better than the current system, at least in time, if not in space.
[People have said it won't work, but I've never seen any good
arguments why, as for conservative stack scanning.]  The code isn't in
a state to measure and tune, but there doesn't seem to be any
fundamental problem.

Emacs basically works if you configure with --enable-boehm-gc, but
leaks badly.  That's at least because of buffer marker chains not
getting swept, though there may be other causes.  Changes can be
enabled which should fix this, but that currently causes a crash after
GC which I haven't been able to debug yet.  It could do with a second
set of eyes on the result of enabling the #ifdef'ed out clause for
GC_MARK_OBJECT in lisp.h.  (Boehm said the basic technique is sound,
so it's likely to be a stupid mistake making it fail, but the tagging
scheme Emacs uses means that the GC debugging hooks won't work
currently.)

If anyone does start working on it, please send me mail.  I'll try to
answer specific questions, but I don't have time to explain the GC
generally.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]