Re: OLD_GC

Bruno Haible <[email protected]>
Newsgroups gmane.lisp.clisp.devel
Message-ID <2100534.hR5ba56oaG@omega>
Hi Vladimir,

> I see you've added OLD_GC to revert to pre-MT GC. While adding MT stuff I
> tried hard to keep everything "as is" in single thread builds.

This is good, and I appreciate it. The principle is that any complex feature
should have a simple substitute, so that we can isolate bugs by trying
to reproduce them in various configurations. This is the idea behind
ENABLE_UNICODE, NO_GENERATIONAL_GC, NO_GETTEXT, and so on.

For the GC, there's not only your existing (past) changes. There's also
new algorithm alternatives that we may implement in the future, such as
  - a "1 page per object" model, that may be useful with valgrind,
  - a "1 new generation per thread" structure, that would make the
    allocation of a new object in MT lock-less in most cases,
  - a possible parallel or incremental GC,...
The OLD_GC is meant as a reference point, to make it easier to
distinguish bugs due to new GC changes from bugs outside the GC.
The DEBUG_GCSAFETY instrumentation catches a number of bugs of the
latter category, but not all.

Bruno


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
clisp-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/clisp-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.