bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#11545: 24.0.96-mac-2.92; Strange speed problem scrolling in C++ code


From: John Wiegley
Subject: bug#11545: 24.0.96-mac-2.92; Strange speed problem scrolling in C++ code
Date: Wed, 23 May 2012 02:24:49 -0500
User-agent: Gnus/5.130006 (Ma Gnus v0.6) Emacs/24.0.97 (darwin)

>>>>> 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.

 - When I scroll a large C++ file in Emacs 24.0.97 the first time, the
   performance is very choppy, even on a powerful Mac Pro machine.

   There are moments toward the end of the file when I can actually count out
   10 seconds or so before it moves on to the next page.  The file is 17,983
   lines long, consisting entirely of type declarations, enum, #define's and
   prototypes.

 - If I press M-<, go back to the top of the file, and then scroll to the
   bottom again, there are basically no pauses.

 - If I delete the buffer and re-open the file, scrolling is the same as
   before.

 - If I delete the buffer and load cc-fonts.elc from Emacs 23.4, scrolling
   performance is *much* better.  It is less choppy, and although it still
   shows one long pause toward the end (garbage collection?), that's it.

 - As before, going to the top with M-< and re-scrolling shows perfect speed,
   no lag whatsoever; and killing the buffer and re-scrolling shows the same
   faster performance as before, with less lag (but still a little bit).

The strange thing is, cc-fonts.el.gz is identical between Emacs 23.4 and Emacs
24.0.97!  Only the .elc's differ.  Have we found a byte-compilation issue in
Emacs 24?

John





reply via email to

[Prev in Thread] Current Thread [Next in Thread]