Subject: Re: bug#15390: 24.3; scrolling in emacs,w32 uses 100% cpu

From: Zack Stackson <[email-masked]>
Date: Wed, 18 Sep 2013 22:53:36 -0500

On Mon, Sep 16, 2013 at 1:41 AM, Eli Zaretskii <[email-masked]> wrote:
>
> Mine is 1920x1080 (but I don't think the size matters here, unless you
> are running with the frame maximized, which you didn't say).

I am running with frame height maximized (1440px), performance with
height set to 720px is not nearly as bad.

> > .emacs config:
> > (setq scroll-step 1)
>
> Is that the only thing in your .emacs?  I started "emacs -Q", then set
> scroll-step to 1 manually -- do you see the same performance problem
> when you do that?  If not, there's something else in your .emacs that
> makes the difference.

I tested with emacs -Q and setting scroll-step to 1 manually, it is the same.

Also tested with emacs -Q and setting font to small size, page up
slowness is the same.

> Emacs 24's display performance is sensitive to the paragraph length as
> well.  A paragraph start and end are defined for this purpose as empty
> lines.  Is it possible that the text files you used didn't have any
> empty lines at all?  If so, can you try files that do have empty
> lines?  Also try setting bidi-paragraph-direction to left-to-right
> (it's a per-buffer setting, so use setq-default to do that in all
> buffers).

They did not have any empty lines, adding empty lines made it much faster.

Tried (setq bidi-paragraph-direction 'left-to-right) and (setq-default
bidi-paragraph-direction 'left-to-right), but that did not make it
faster.

> > Result with emacs-24.3 with smaller font (6x10 from X11): scrolls one page,
> > then stops rendering anything (second to last page stays on the screen),
> > uses 100% cpu until top of buffer is reached, then starts rendering again.
> > Result with emacs-22.3 with smaller font (6x10 from X11): scrolling is
> > smooth, renders all pages, 0-50% cpu usage.
>
> Couldn't try this one, since you didn't say which font you used,
> exactly, and how/from where to get it installed on Windows.

Setting font to Consolas size 68 gives similar results to the 6x10
font.  (I don't remember which program I used to convert the 6x10 X11
font to windows .fnt)

> Yes, Emacs 24's display is slower than that of Emacs 23, because the
> former supports bidirectional scripts.  So it's not a surprise that
> you see some performance degradation.  However, that degradation
> should be apparent only in some rare use cases.  So the question is,
> what is special in your case?

Emacs 23 is also slow, not as slow as 24, but not much different.
Emacs 22 is very fast, so that's the version I have been using.

Do bitmap raster fonts take more work than other fonts, maybe that's
part of it?  The font is 3kb, could I attach it?

Page up is also slow when editing files with syntax highlighting
(replace.el for example).

> Date: Mon, 16 Sep 2013 09:41:52 +0300
> From: Eli Zaretskii <[email-masked]>

> In addition, the characters that begin a paragraph might be of
> importance.  You say "text file", so I presume that is human-readable
> text, but it could also be a file with many digits and punctuation
> characters -- these make redisplay work harder.

Yes, there are many numbers and punctuation, just tested with the
following repeated:

AA3036B2-CCCC DD3036E1-FFF Test text Test text Test text Test text Test

But it also happens on syntax highlighted files when using a small font.