GNU bug report logs -
#63364
(man "gcc") very slow
Previous Next
To reply to this bug, email your comments to 63364 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#63364
; Package
emacs
.
(Mon, 08 May 2023 08:16:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Tobias Bading <tbading <at> web.de>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Mon, 08 May 2023 08:16:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
With emacs-29 branch 7133784303 or master 31a66dc891:
1. emacs -Q
2. M-x man RET gcc RET
Emacs 29 and 30 both need almost 30 seconds to fully display this man page
on my machine (18714 lines, gcc-9, 2021-06-01). Emacs 26.3 needs about 2
seconds. (All tests done after “sudo cpupower frequency-set --max 3.5GHz”.)
According to “perf top -g”, rpl_re_search_2 and re_match_2_internal are
heavily involved.
---
In GNU Emacs 29.0.90 (build 3, x86_64-pc-linux-gnu, GTK+ Version
3.24.20, cairo version 1.16.0) of 2023-05-08 built on omega
Repository revision: 71337843036d6a6b53aedcf898febd1b591b5f41
Repository branch: emacs-29
Windowing system distributor 'The X.Org Foundation', version 11.0.12013000
System Description: Ubuntu 20.04.6 LTS
Configured using:
'configure --with-modules --with-imagemagick --without-tree-sitter'
Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ
IMAGEMAGICK JPEG JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2
M17N_FLT MODULES NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3
THREADS TIFF TOOLKIT_SCROLL_BARS WEBP X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB
Important settings:
value of $LC_COLLATE: C.UTF-8
value of $LC_MONETARY: de_DE.UTF-8
value of $LC_NUMERIC: de_DE.UTF-8
value of $LC_TIME: de_DE.UTF-8
value of $LANG: C.UTF-8
locale-coding-system: utf-8-unix
Major mode: Man
Minor modes in effect:
tooltip-mode: t
global-eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
buffer-read-only: t
line-number-mode: t
indent-tabs-mode: t
transient-mark-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
Load-path shadows:
None found.
Features:
(shadow sort mail-extr emacsbug message mailcap yank-media puny dired
dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg rfc6068
epg-config gnus-util text-property-search time-date subr-x mm-decode
mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader
sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils tabify
cl-seq imenu man cl-loaddefs cl-lib ansi-color rmc iso-transl tooltip
cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type
elisp-mode mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd
fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow
isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax
font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic
indonesian philippine cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
composite emoji-zwj charscript charprop case-table epa-hook
jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs
theme-loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget keymap
hashtable-print-readable backquote threads dbusbind inotify lcms2
dynamic-setting system-font-setting font-render-setting cairo
move-toolbar gtk x-toolkit xinput2 x multi-tty make-network-process
emacs)
Memory information:
((conses 16 330857 10339)
(symbols 48 5616 0)
(strings 32 14327 1855)
(string-bytes 1 410345)
(vectors 16 10104)
(vector-slots 8 165652 21107)
(floats 8 33 49)
(intervals 56 158501 0)
(buffers 976 11))
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#63364
; Package
emacs
.
(Mon, 08 May 2023 13:11:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 63364 <at> debbugs.gnu.org (full text, mbox):
> Date: Mon, 8 May 2023 10:15:33 +0200
> From: Tobias Bading <tbading <at> web.de>
>
> With emacs-29 branch 7133784303 or master 31a66dc891:
>
> 1. emacs -Q
>
> 2. M-x man RET gcc RET
>
> Emacs 29 and 30 both need almost 30 seconds to fully display this man page
> on my machine (18714 lines, gcc-9, 2021-06-01). Emacs 26.3 needs about 2
> seconds. (All tests done after “sudo cpupower frequency-set --max 3.5GHz”.)
>
> According to “perf top -g”, rpl_re_search_2 and re_match_2_internal are
> heavily involved.
I think this is the price of fixing bugs with fontification/cleanup of
the man pages, which we installed in Emacs 27; see bug#36927. Since
the text of the man page is received from the background formatter in
chunks of arbitrary size, we cannot fontify/cleanup each chunk
separately, because that will miss some patterns we want to process.
So whenever a chunk is received, we always go to the beginning of the
section, and start fontifying from there. And the GCC man page
basically has one huge OPTIONS section and very little else. So each
time we receive one more chunk, we go back to the beginning of OPTIONS
and restart anew.
If someone has ideas for how to go back to a closer place without
missing some roff markup that got divided between chunks, patches are
welcome. OTOH, we don't really want to encourage use of man pages...
Severity set to 'wishlist' from 'normal'
Request was from
Stefan Kangas <stefankangas <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Mon, 04 Sep 2023 08:30:03 GMT)
Full text and
rfc822 format available.
This bug report was last modified 1 year and 285 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.