emacs-devel
[Top][All Lists]
Advanced

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

Re: Not using DOC for ELisp files


From: Po Lu
Subject: Re: Not using DOC for ELisp files
Date: Tue, 28 Dec 2021 18:31:40 +0800
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.60 (gnu/linux)

Phil Sainty <psainty@orcon.net.nz> writes:

> I believe that Jeff Walsh is currently continuing work on the
> generational GC started by Daniel Colascione.

I don't think a purely generational GC is the way to go.  It's
inappropriate for an interactive program like Emacs, where
responsiveness is more important than raw GC performance.

Besides, the goal of my garbage collector is to be minimally invasive.

It extends the existing mark-and-sweep garbage collector to act
incrementally, and makes use of hardware write barriers.  (And as such
is unlikely to work on machines that don't support VM and something like
`mprotect'.)

It's still a work-in-progress with some features completely missing, and
it also has a lot of low-hanging optimization fruit.  For example, when
a write barrier is hit, the faulting address is looked up inside
mem_root, and the object found is simply pushed back onto the scan
stack.  (Nothing fancy is done with objects such as conses, where
chances are the object being written to it can be immediately marked
because it will not be modified further.)

Incremental marking already works in undumped Emacs, except for a tough
bug involving car-nested conses that are scanned from intervals on the
stack that cross a page, but I haven't worked on incremental sweeping
yet, and it doesn't work in a dumped Emacs at all.

Thanks.


reply via email to

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