emacs-devel
[Top][All Lists]
Advanced

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

Re: master c59e878: Inhibit modification hooks when saving eieio-persist


From: Eric Abrahamsen
Subject: Re: master c59e878: Inhibit modification hooks when saving eieio-persistent's
Date: Mon, 04 May 2020 14:09:39 -0700
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

Michael Heerdegen <address@hidden> writes:

> Stefan Monnier <address@hidden> writes:
>
>> > After having identified the culprits in my case - all of them can be
>> > fixed - there is not much speedup left from this particular change.
>> > Given that, but also given that we don't know what other people might
>> > have added there - do you think that using `combine-change-calls' in
>> > this case is justified, Stefan?
>>
>> I hope not ;-)
>
> Then Eric I think it's your turn now to check (profile) if this is at
> all helpful in your case.  Could you please try that?

Okay, I started with the existing `inhibit-modification-hooks' edit.
Saving both the gnus registry (not many objects but they're pretty
large; file is 30M) and one of my EBDB databases (many objects but
they're quite small; file is 550K). Basically just loaded both objects
into a variable, and then repeatedly saved the object with
`eieio-persistent-save'.

;; With modification hooks uninhibited (ie, reverting Michael's commit).
(benchmark-run 100 (my-save-registry)) -> (1028.64836554 2801 537.1068782020001)
(benchmark-run 100 (my-save-ebdb)) -> (51.585404029 134 20.779424303000003)

;; With modification hooks inhibited (Emacs master).
(benchmark-run 100 (my-save-registry)) -> (989.206686569 2800 526.325465032)
(benchmark-run 100 (my-save-ebdb)) -> (63.946958194 127 23.392065172000002)

I haven't tried it with `combine-change-calls' or any of the other
speedups (gc-cons-threshold, etc), mostly because I've also been trying
to get work done. But I can test with any combination of changes, as
needed.

Eric



reply via email to

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