emacs-devel
[Top][All Lists]
Advanced

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

Re: Default of jit-lock-stealth-time


From: Eli Zaretskii
Subject: Re: Default of jit-lock-stealth-time
Date: Sun, 04 Mar 2007 01:18:40 +0200

> Cc: address@hidden,  address@hidden
> From: David Kastrup <address@hidden>
> Date: Sat, 03 Mar 2007 16:37:33 +0100
> >> 
> >> Apart from "pathological" buffers, paging through a file will deliver
> >> font locking fast enough to follow the user action
> >
> > Where ``fast enough'' means what, precisely?
> 
> The limiting factor is the speed with which the user types scrolling
> commands.

Does it keep up with the keyboard's autorepeat, for example?

> >> In contrast, left alone to jit-lock-stealth-time=16, Emacs will
> >> eventually turn to eating 100% of CPU time (not 1-3%)
> >
> > How can this happen?  JIT-lock is supposed to fontify at most
> > jit-lock-chunk-size characters (500 by default), and then refrain
> > from fontification for at least jit-lock-stealth-nice seconds (0.5
> > by default).  How can Emacs take 100% of CPU with these defaults?
> 
> It does.  If 0.5 seconds is small compared to the time it takes for
> the fontification, CPU load will be close to 100%.  Granted, I get
> more like 80% on an extended average, but it certainly is enough to
> drain the batteries, keep the fan running and render the system
> (inside and outside of Emacs) sluggish.

It sounds strange that fontification of 500 characters should take
time much longer than 0.5 seconds.  What happens if you increase the
value of jit-lock-stealth-nice, does the load go down proportionally?

> > David, your opinion was heard, loud and clear, several times
> > already.  There's no need to reiterate it.  Doing so just wastes
> > bandwidth.
> 
> I was commenting on your findings.  Do you mean to say that discussion
> of your findings is to be prohibited if that could point to the same
> conclusion?

I didn't mean anything except what I said.  And please cool down, we
are discussing technical issues that aren't supposed to get anyone
worked out.

> > For my part, I can say that investing a small fraction of CPU power
> > when none is used is by far wiser than annoying the user with
> > redisplay delays, if those are noticeable.
> 
> As I said: they are only noticeable when patterns are at work that
> make stealth fontification behave _untolerably bad_, without being
> debuggable.

Then perhaps fixing those bad patterns is a better way of dealing with
the problem.  Can you tell what files exhibit this bad behavior?  I'd
like to see what happens with them on my machines.

> The CPU power is not just invested when "none is used", it drains the
> power of the system, it suggests that Emacs is the _only_ application
> worthy to use CPU power at any time, anyway, and so it is fine for it
> to grab it without being asked.

We have customizations to take care of significant drain of power.  We
were discussing the defaults.  By default, I think Emacs should use up
a small fraction of CPU resources when it fontifies stealthily.  That
is what the default values try to accomplish.




reply via email to

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