emacs-devel
[Top][All Lists]
Advanced

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

Re: MPS experiment successful


From: Andrea Corallo
Subject: Re: MPS experiment successful
Date: Thu, 18 Apr 2024 05:14:19 -0400
User-agent: Gnus/5.13 (Gnus v5.13)

Gerd Möllmann <gerd.moellmann@gmail.com> writes:

> Eli Zaretskii <eliz@gnu.org> writes:
>
>>> That's all. There is nothing more. And I'm currently undecided how to
>>> proceed with this.
>>
>> The next step would be to push a feature branch into the Emacs Git
>> repository and let people try the branch on the other supported
>> platforms.  If the code is not yet mature enough for that, please
>> suggest how to get from here to there.
>
> I think technically it could be done, but there are some things that
> would need to be done. From the top of my head:
>
> - CL packages vs. obarrays (I do have packages but no obarrays)
> - Handling of pure space
> - Handling the new JSON stuff, which I don't have in my branch, I think.
> - ...
>
> And then of course the general work of getting a branch from a what is
> basically a fork back to the forked repo, which I'm not so sure how to
> go about that.
>
> But my undecidedness comes more from what could come after that. I'm not
> sure how willing I am to invest what can be years to get things
> finished, esp. if no one else starts working on it. Had that one time
> too often in the 90s, some might remember ;-).
>
>> Would you like to describe in a few words what would be the advantages
>> and disadvantages of this GC for Emacs?
>
> Advantages for users:
>
> For the user it means the final end to GC pauses. MPS runs in a
> different thread wich can be in a different core.
>
> What MPS means for the overall speed of Emacs I find impossible to say.
> MPS doesn't seem to be slow at all though, although some slowdown can be
> expected in the client because of thread-safe allocations.
>
> Example for a confusing fact that I noticed today:
>
> Full build without MPS, -O0, checking
>
> real  26:20.01
> user  1:32:15.54
> sys   3:20.74
>
> Same build with debug MPS (-lmps-debug)
>
> real  14:07.90
> user  44:17.94
> sys   3:15.99
>
> That's on an 2,3 GHz Quad-Core Intel Core i7, 16G RAM, SSD. 🤷

Hi Gerd,

sounds very interesting.  I think we'll need more performance figures
especially on non debug builds in the future to better undesrtand this.

OTOH even in case it proves to be a tiny bit slower having no pauses is
a big plus.

  Andrea



reply via email to

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