GNU bug report logs - #30539
26.0; `char-displayable-p' is much slower in Emacs 25 and 26

Previous Next

Package: emacs;

Reported by: Drew Adams <drew.adams <at> oracle.com>

Date: Mon, 19 Feb 2018 22:09:02 UTC

Severity: minor

Found in version 26.0

Done: Stefan Kangas <stefan <at> marxist.se>

Bug is archived. No further changes may be made.

Full log


Message #8 received at 30539 <at> debbugs.gnu.org (full text, mbox):

From: Drew Adams <drew.adams <at> oracle.com>
To: 30539 <at> debbugs.gnu.org
Subject: RE: bug#30539: 26.0; `char-displayable-p' is much slower in Emacs 25
 and 26
Date: Tue, 20 Feb 2018 10:08:36 -0800 (PST)
[Message part 1 (text/plain, inline)]
Sorry, the recipe I sent before was not good.  The initial
alist of chars had already been purged of any chars that
are not `char-displayable-p'.

Please try attached file `throw-mule-bug-2.el' instead.
This time the alist of chars in variable `char-names'
includes some chars that are not `char-displayable-p'.
Evaluating `char-displayable-p' for those chars is, I
think, where the bottleneck is.

Evaluate the code in `throw-mule-bug-2.el' and then check
buffers *CPU Profiler Report* and *Memory Profiler Report*.

I've attached those reports as these files:

throw-mule-bug-cpu-report2-E24-Q - Emacs 24.5 from `emacs -Q'
throw-mule-bug-mem-report2-E24-Q - Emacs 24.5 from `emacs -Q'
throw-mule-bug-cpu-report2-E26-Q - Emacs 26P2 from `emacs -Q'
throw-mule-bug-mem-report2-E26-Q - Emacs 26P2 from `emacs -Q'

You can see these reports by using `M-x profiler-find-profile'
and entering the report file name at the prompt.

In Emacs 24.5 evaluating `(my-test)' takes only a few _seconds_.
In Emacs 26 (Pretest 2) it takes about 13 _minutes_.

Emacs 25.3.1 has the same problem as Emacs 26.
[throw-mule-bug-cpu-report2-E24-Q (application/octet-stream, attachment)]
[throw-mule-bug-mem-report2-E24-Q (application/octet-stream, attachment)]
[throw-mule-bug-cpu-report2-E26-Q (application/octet-stream, attachment)]
[throw-mule-bug-mem-report2-E26-Q (application/octet-stream, attachment)]
[throw-mule-bug-2.el (application/octet-stream, attachment)]

This bug report was last modified 4 years and 180 days ago.

Previous Next


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