GNU bug report logs - #69773
29.2; Emacs Crashes on Startup Sometimes

Previous Next

Package: emacs;

Reported by: Stephen Molitor <stephen.molitor <at> icloud.com>

Date: Wed, 13 Mar 2024 13:34:01 UTC

Severity: normal

Found in version 29.2

Full log


View this message in rfc822 format

From: Stephen Molitor <stephen.molitor <at> icloud.com>
To: Eli Zaretskii <eliz <at> gnu.org>, Gerd Möllmann <gerd.moellmann <at> gmail.com>, 69773 <at> debbugs.gnu.org
Subject: bug#69773: 29.2; Emacs Crashes on Startup Sometimes
Date: Fri, 15 Mar 2024 09:32:32 -0500
[Message part 1 (text/plain, inline)]
Thanks for the benchmarking function. Here are the results I get running it three times on a fresh start of Emacs on src/xdisp.c:


with smart kerning:
GCs: 2 Elapsed time: 14.546864 seconds
GCs: 1 Elapsed time: 9.899920 seconds
GCs: 1 Elapsed time: 9.880759 seconds

without smart kerning
GCs: 2 Elapsed time: 12.188979 seconds
GCs: 0 Elapsed time: 7.264108 seconds
GCs: 1 Elapsed time: 7.346031 seconds

So it’s about a third slower. The difference is noticable.

> Btw, why aren't digit characters 0-9 in the regexp you use in sm-safe-table?  More generally, why not all of the ASCII characters are there? isn't smart kerning performed for them as well?  Come to think about that, what about Latin non-ASCII characters like á etc.?

The font I’m using, Commit Mono, only does smart kerning on a limited set of characters:

https://github.com/eigilnikolajsen/commit-mono/blob/main/src/features/kern_smartkerning.fea
commit-mono/src/features/kern_smartkerning.fea at main · eigilnikolajsen/commit-mono
github.com


> On Mar 15, 2024, at 2:46 AM, Eli Zaretskii <eliz <at> gnu.org> wrote:
> 
>> From: Stephen Molitor <stephen.molitor <at> icloud.com>
>> Date: Thu, 14 Mar 2024 17:10:37 -0500
>> 
>> Not that I’ve noticed.
>> 
>> I mean maybe it does, but I haven’t noticed. I have a fast machine. Is there an easy way to measure?
> 
> Yes, of course.  Here's one example:
> 
>  (defun scroll-up-benchmark ()
>    (interactive)
>    (let ((oldgc gcs-done)
> 	  (oldtime (float-time)))
>      (condition-case nil (while t (scroll-up) (redisplay))
> 	(error (message "GCs: %d Elapsed time: %f seconds"
> 			(- gcs-done oldgc) (- (float-time) oldtime))))))
> 
> Run this on a large file (I use src/xdisp.c) with and without your
> set-char-table-range customization, and compare the results.
> 
> Btw, why aren't digit characters 0-9 in the regexp you use in
> sm-safe-table?  More generally, why not all of the ASCII characters
> are there? isn't smart kerning performed for them as well?  Come to
> think about that, what about Latin non-ASCII characters like á etc.?

[Message part 2 (text/html, inline)]
[commit-mono.png (image/png, inline)]

This bug report was last modified 1 year and 97 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.