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

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

bug#14838: 24.3.50; repeating next-line or previous-line is broken


From: Eli Zaretskii
Subject: bug#14838: 24.3.50; repeating next-line or previous-line is broken
Date: Thu, 11 Jul 2013 22:16:00 +0300

> From: Stephen Berman <stephen.berman@gmx.net>
> Cc: Jan Djärv <jan.h.d@swipnet.se>,  14838@debbugs.gnu.org
> Date: Thu, 11 Jul 2013 20:51:42 +0200
> 
> Here are the top 200 lines of another profile (not identical to the one
> I posted previously, but similar), which account for 99% of the CPU
> time.  Is this saying that 70% of CPU time is spent in line-move-partial
> (and 82% in aref)?

I don't believe the aref part.  I think the real culprit is font-info.
Let's conduct an experiment: if you modify default-font-height so that
it always just calls frame-char-height, does the problem go away?

> >> vs 0 dlh 14 this nil rowh 13 rbot 1 py 0 vpos 32 last 31.0
> >> 2
> >> 
> >> and nothing else.
> >
> > The "py 0" part is very strange.  "py" is the vertical coordinate of
> > point in screen line units.  Since this was with C-n, I expect py
> > never to be less than half the screen height, which is 16.  How come
> > it is zero, i.e. point is in the first line?  Can you step through
> > line-move-partial in Edebug and see what is going on there?
> 
> If I instrument line-move-partial and type `C-n', I see py = 0 on the
> first line and it increases by 1 on each subsequent line.  I have no
> idea why *Messages* only showed a value of 0 for py; could it be that
> the messages were overwritten when the CPU load hit 90%?

Could be, since the messages are produced as part of redisplay.

Can you show the trace messages from when the CPU is not yet 100%
busy, and Emacs can still keep up with scrolling?





reply via email to

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