From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: cc-mode fontification feels random Date: Fri, 11 Jun 2021 21:22:56 +0300 Message-ID: <83eed89s73.fsf@gnu.org> References: <62e438b5-d27f-1d3c-69c6-11fe29a76d74@dancol.org> <83fsxsdxhu.fsf@gnu.org> <83pmwudgw3.fsf@gnu.org> <83k0n2cjg5.fsf@gnu.org> <83im2lbqmv.fsf@gnu.org> <179f6e4fa40.2816.cc5b3318d7e9908e2c46732289705cb0@dancol.org> <83fsxpbpn9.fsf@gnu.org> <83k0n09tkp.fsf@gnu.org> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="23332"; mail-complaints-to="usenet@ciao.gmane.io" Cc: acm@muc.de, emacs-devel@gnu.org, monnier@iro.umontreal.ca, rms@gnu.org, rudalics@gmx.at To: Daniel Colascione Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Jun 11 20:24:05 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lrlp7-0005r5-I0 for ged-emacs-devel@m.gmane-mx.org; Fri, 11 Jun 2021 20:24:05 +0200 Original-Received: from localhost ([::1]:51698 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lrlp6-0002MG-JO for ged-emacs-devel@m.gmane-mx.org; Fri, 11 Jun 2021 14:24:04 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:49214) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lrloL-0001bH-64 for emacs-devel@gnu.org; Fri, 11 Jun 2021 14:23:17 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:37228) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lrloI-00029J-9B; Fri, 11 Jun 2021 14:23:14 -0400 Original-Received: from 84.94.185.95.cable.012.net.il ([84.94.185.95]:1302 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lrloB-0003Xr-Ut; Fri, 11 Jun 2021 14:23:08 -0400 In-Reply-To: (message from Daniel Colascione on Fri, 11 Jun 2021 11:02:34 -0700) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:270711 Archived-At: > Cc: rudalics@gmx.at, monnier@iro.umontreal.ca, rms@gnu.org, > emacs-devel@gnu.org > From: Daniel Colascione > Date: Fri, 11 Jun 2021 11:02:34 -0700 > > >> 0.026s, 0.025s, 0.026s, 0.078s, 0.026s, 0.027s. > >> > >> That is, with the exception of the fourth timing, the scroll operation > >> takes a little over 1/40 second. > >> > >> This is in an Emacs-28 compiled with default optimisation, on a 4 > >> year-old first generation Ryzen machine. > >> > >> For me personally, this scrolling speed, in conjunction with > >> fast-but-imprecise-scrolling, is acceptable. I also accept there are > >> people with slower machines. > > I suggest to compare these times with Emacs 23 to see how we > > regressed. > > Regression is acceptable in exchange for correctness so long as absolute > performance is adequate. We're not using 80486s anymore. Here are my times using an optimized build of Emacs 27.2 on a 3.4GHz Core i7 box: 0.015625 0.03125 0.015625 0.046875 0.09375 0.0625 0.015625 0.03125 0.015625 0.03125 0.015625 0.03125 You consider this to be adequate performance for a single window-scroll? (I don't have an optimized build of Emacs 28, but there's no reason to believe it is faster; quite the opposite.) And here's the top part of the profile while running the above benchmark: - redisplay_internal (C function) 159 65% - jit-lock-function 158 65% - jit-lock-fontify-now 158 65% - jit-lock--run-functions 158 65% - run-hook-wrapped 158 65% - # 158 65% - font-lock-fontify-region 157 65% - c-font-lock-fontify-region 157 65% - font-lock-default-fontify-region 146 60% - font-lock-fontify-keywords-region 143 59% - c-font-lock-declarations 97 40% - c-find-decl-spots 97 40% - # 73 30% - c-forward-decl-or-cast-1 38 15% - c-forward-type 22 9% - c-check-qualified-type 7 2% We can stick our heads in the sand as much as we want, but facts are stubborn things.