emacs-devel
[Top][All Lists]
Advanced

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

Re: noverlay branch


From: Ihor Radchenko
Subject: Re: noverlay branch
Date: Sat, 08 Oct 2022 10:36:28 +0800

Eli Zaretskii <eliz@gnu.org> writes:

> Thanks, but the above can only be interpreted on your machine.  So
> either you can do this while running Emacs under GDB, and then post
> the backtrace produced by GDB; or use the technique described in the
> node "Crashing" of the Emacs user manual to convert the above
> addresses to source file names and line numbers, and post the results
> here.
>
> FTR: Emacs didn't crash, it aborted (most probably due to an assertion
> violation).

Update: I can no longer see crashes on the latest commit in the branch.

I was able to use the branch with my config for while now, and it works
mostly fine.

There are a couple of glitches though:
1. hl-line-mode overlay sometimes disappear
2. notmuch search buffer hides text in wrong places (see the attached video)

Should I report these things as proper bugs or is it OK to discuss them
within this thread?

Also, I did a small test comparing Org mode folding performance (using
overlays) on master vs feature/noverlay branch using the methodology
described in https://blog.tecosaur.com/tmio/2022-05-31-folding.html:

On large 20Mb Org file using built-in Org version:

master: Elapsed time: 142.940028s (1.428150s in 55 GCs)
feature/noverlay: Elapsed time: 4.369854s (1.451378s in 74 GCs)

for comparison, the Org version from main yields:

Emacs master:
 - main Org branch using text properties for folding: Elapsed time: 2.185786s 
(0.639190s in 4 GCs)
 - main Org branch using overlays for folding: Elapsed time: 27.244284s 
(0.731581s in 5 GCs)

Emacs feature/noverlay:
 - main Org branch using text properties for folding: Elapsed time: 1.586936s 
(0.476606s in 3 GCs)
 - main Org branch using overlays for folding: Elapsed time: 2.039803s 
(0.724576s in 5 GCs)

The improvement is very significant. GCs are mostly caused by Org
internals staff as you can see by comparing built-in and main Org
versions. Without GCs, overlays are on par with text properties.

We also have tests for marker scaling. If the overlay tree
implementation can be reused for markers, it would also be great.

Attachment: 2022-10-08 09-17-35.mkv
Description: video/matroska

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>

reply via email to

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