Subject: bug#73563: [Ben Simms] Performance bottleneck in ns_draw_fringe_bitmap

From: Alan Third <[email-masked]>
Date: Tue, 3 Jun 2025 22:07:01 +0100

On Tue, Jun 03, 2025 at 05:25:40PM +0900, Jordan Ellis Coppard wrote:
> On 25/5/2025 1:10 am, Alan Third wrote:
> > Since we can't really use Core Graphics code in the NS port, I've
> > tried improving the bitmap tracing a little. I have my doubts it will
> > improve things much, but can you please try it and see how it
> > compares? I tried it here and the difference between all three
> > versions of the code is within 0.2 of a second, and totally
> > inconsistent. I couldn't vouch for any of them being consistently
> > faster.
> 
> Your patch appears to have fixed it. I can now add 8-bit fringe bitmaps and
> scroll a buffer with no noticeable slowdown.

Thanks for testing!

> Unpatched Emacs will slow down to a crawl, probably only
> redisplaying 1-3 times a second, Ben Simms' patch looks equally as
> performant as this one however Ben's seems to break with dape-mode
> which arranges the Emacs frame into a bunch of windows etc.

Hmm, I'm surprised to hear that as I didn't think Ben's patch would
have touched anything that should break that.

> Yours, Alan, seems to not bork Emacs display under dape-mode but
> there are tiny 1-pixel artifacts in the margin (only in dape-mode).

Can you send a screenshot? That sounds odd.

-- 
Alan Third