unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Alan Mackenzie <acm@muc.de>
To: Stefan Kangas <stefan@marxist.se>
Cc: John Wiegley <jwiegley@gmail.com>, 11545@debbugs.gnu.org
Subject: bug#11545: 24.0.96-mac-2.92; Strange speed problem scrolling in C++ code
Date: Sat, 2 Nov 2019 10:59:25 +0000	[thread overview]
Message-ID: <20191102105925.GA6710@ACM> (raw)
In-Reply-To: <87bltvigo0.fsf@skangas.se>

Hello, Stefan.

On Fri, Nov 01, 2019 at 19:40:31 +0100, Stefan Kangas wrote:
> Hi Alan,

> Alan Mackenzie <acm@muc.de> writes:

> > On Mon, May 28, 2012 at 06:05:15PM -0500, John Wiegley wrote:
> >> >>>>> John Wiegley <jwiegley@gmail.com> writes:

> >> >>>>>> YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes:
> >> >> With the Time Profiler in Instrument.app, I found that fontification
> >> >> of CC Mode in Emacs 24 is much heavier and causes frequent GCs than
> >> >> that in Emacs 23.  Please try the following:

> >> >>   1. Start Emacs 24 Mac port with -Q (alternatively, pressing the
> >> >>      shift key.)
> >> >>   2. M-x load-file PREFIX/share/emacs/23.4/lisp/progmodes/cc-fonts.elc
> >> >>      RTE.
> >> >>   3. Replay scrolling a large C++ file.

> >> >> I'm not sure if this slowdown is intended or expected.

> >> > Indeed, this makes the speed situation much better on Emacs 24.0.97.

> >> I can now confirm that loading CC-Mode 5.32.3 into Emacs 23.4 causes
> >> the identical speed issues that I was seeing with Emacs 24.0.97, so
> >> this is a performance issue in the latest CC-Mode, not a bug in Emacs
> >> 24 or with Mac-Port Emacs.

> >> To the CC-Mode maintainers: is there a way to disable the slower, "more
> >> correct" mode in the latest CC-Mode, and go back to the entirely
> >> sufficient (for me) mode of previous versions?

> > Not as such, no.  The only workaround at the moment is to use a
> > "pre-correct" version of CC Mode in place of an up to date one.

> > I've just done a binary chop on CC Mode versions, and it seems the latest
> > version before (?the first of) these enhancements was the one created by
> > this (mercurial) changeset (the repository can be downloaded from
> > <http://cc-mode.sourceforge.net>):

> >     changeset:   5109:981fa4f0270c
> >     parent:      5107:bd4013c5633b
> >     user:        acmacm
> >     date:        Wed Sep 15 17:47:52 2010 +0000
> >     files:       cc-engine.el
> >     description:
> >     (c-forward-<>-arglist-recur): Fix an infinite recursion.

> > To undo these changes would be difficult, since several later
> > enhancements and bug fixes are based on the new code.  I'll see if I can
> > find some way of optimising the offending code - most of the time it's
> > doing expensive checks and finding nothing.

> > Anyhow, I've got the problem flagged as a bug now.  Thanks again for
> > reporting it.

> Just to follow up on this bug, which has seen no update in the last 7
> years.  Has it been fixed by now?

"Fixed" doesn't seem the right term, really.  There have been several
improvemnts in the scrolling speed over the years (the latest less than
an hour ago ;-).  When I scroll through a typical ~700k C++ buffer, I now
experience mild sluggishness, a C-v taking a small fraction of a second,
but longer than instantaneous.  This is perhaps less than ideal on a
slowish machine (which mine is not), but there's a tradeoff between rapid
fontification and correct fontification.

I think this bug should now be closed.

> Best regards,
> Stefan Kangas

-- 
Alan Mackenzie (Nuremberg, Germany).





  reply	other threads:[~2019-11-02 10:59 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <m2d364ocwo.fsf@gmail.com>
     [not found] ` <wlwr4bsioz.wl%mituharu@math.s.chiba-u.ac.jp>
     [not found]   ` <m2zk97qvpr.fsf@gmail.com>
     [not found]     ` <wlvcju737a.wl%mituharu@math.s.chiba-u.ac.jp>
2012-05-23  7:24       ` bug#11545: 24.0.96-mac-2.92; Strange speed problem scrolling in C++ code John Wiegley
2012-05-23  7:35         ` Andreas Schwab
2012-05-23  7:51         ` Glenn Morris
2012-05-23  8:15           ` Glenn Morris
2012-05-23 10:28             ` John Wiegley
2012-05-23 16:16               ` Eli Zaretskii
2012-05-23 22:27                 ` John Wiegley
2012-05-25 21:45               ` Alan Mackenzie
2012-05-26  7:46                 ` John Wiegley
2012-05-28 23:05         ` John Wiegley
2012-06-02 21:20           ` Alan Mackenzie
2012-06-11 13:31             ` bug#11545: " John Wiegley
2019-11-01 18:40             ` Stefan Kangas
2019-11-02 10:59               ` Alan Mackenzie [this message]
2019-11-02 11:08                 ` Stefan Kangas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191102105925.GA6710@ACM \
    --to=acm@muc.de \
    --cc=11545@debbugs.gnu.org \
    --cc=jwiegley@gmail.com \
    --cc=stefan@marxist.se \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).