emacs-devel
[Top][All Lists]
Advanced

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

Re: CC Mode with font-lock-maximum-decoration 2


From: Alan Mackenzie
Subject: Re: CC Mode with font-lock-maximum-decoration 2
Date: Mon, 8 Aug 2022 18:20:48 +0000

Hello, Eli.

On Mon, Aug 08, 2022 at 20:15:25 +0300, Eli Zaretskii wrote:
> > Date: Mon, 8 Aug 2022 15:05:29 +0000
> > Cc: emacs-devel@gnu.org
> > From: Alan Mackenzie <acm@muc.de>

> > For this measurement, I started with subr.el, and appended copies of it
> > to itself, then took functions off the end, to make it the same size as
> > xdisp.c.  xdisp.c is 1209233 bytes, my .el buffer was 1209371 bytes.

> > I used M-: (benchmark-run 1 (time-scroll-b)) on each buffer, with:

> >     (defun time-scroll-b (&optional arg)    ; For use in `benchmark-run'.
> >       (condition-case nil
> >           (while t
> >             (if arg (scroll-down) (scroll-up))
> >             (sit-for 0))
> >         (error nil)))

> > ..  The exact results were:
> > (xdisp.c): (5.7370774540000005 9 0.7672129740000013)
> > (elisp):   (4.1201735589999995 5 0.42918214299999846).

> > This was, of course, on an optimised build on GNU/Linux using the Linux
> > console, both measurements starting at BOB, having typed and deleted a
> > character to erase existing font-locking.

> Editing source code is more than just scrolling through the text and
> getting it fontified, though.

Yes, of course.  Here I'm deliberately separating the fontification from
the buffer changes to get a ballpark figure purely for the fontification.
And the results suggest that optimising that in CC Mode/2 is not going to
be fruitful.

> For realistic measurements, you need to emulate and time a typical mix
> of editing operations.

Yes.  I'm intending to do that sometime soon.

-- 
Alan Mackenzie (Nuremberg, Germany).



reply via email to

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