From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Alan Third Newsgroups: gmane.emacs.devel Subject: Re: macOS metal rendering engine in mac port Date: Sat, 22 May 2021 20:57:12 +0100 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="5966"; mail-complaints-to="usenet@ciao.gmane.io" Cc: YAMAMOTO Mitsuharu , emacs-devel@gnu.org To: Aaron Jensen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat May 22 21:59:04 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 1lkXm4-0001I8-7y for ged-emacs-devel@m.gmane-mx.org; Sat, 22 May 2021 21:59:04 +0200 Original-Received: from localhost ([::1]:33686 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lkXm3-0005aS-Bf for ged-emacs-devel@m.gmane-mx.org; Sat, 22 May 2021 15:59:03 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:59924) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lkXlK-0004to-IH for emacs-devel@gnu.org; Sat, 22 May 2021 15:58:18 -0400 Original-Received: from [217.169.17.33] (port=56983 helo=breton.holly.idiocy.org) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lkXlH-0005Yg-FX for emacs-devel@gnu.org; Sat, 22 May 2021 15:58:18 -0400 Original-Received: by breton.holly.idiocy.org (Postfix, from userid 501) id ED5AE202C1B69E; Sat, 22 May 2021 20:57:12 +0100 (BST) Mail-Followup-To: Alan Third , Aaron Jensen , emacs-devel@gnu.org, YAMAMOTO Mitsuharu Content-Disposition: inline In-Reply-To: X-Host-Lookup-Failed: Reverse DNS lookup failed for 217.169.17.33 (failed) Received-SPF: none client-ip=217.169.17.33; envelope-from=alan@breton.holly.idiocy.org; helo=breton.holly.idiocy.org X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=no autolearn_force=no X-Spam_action: no action 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:269624 Archived-At: On Sat, May 22, 2021 at 11:59:43AM -0700, Aaron Jensen wrote: > On Sat, May 22, 2021 at 11:45 AM Alan Third wrote: > > > > On my machine the scroll benchmark shows Emacs 27 being able to update > > the screen more than twice as fast as any version of the Mac port, yet > > this shows Emacs 27 isn't really any better. > > For some reason, Emacs Mac port (non-metal) doesn't paint the screen > during scroll-up-benchmark, it just pauses, but it's faster on my > machine. Well, I'm sure we can make that optimisation on the NS port too. ;) > Full screen frame, with line numbers (11k lines): > > Mac port: 2.88s > emacs27-drawing branch: 4.42s > master: 6.75s > > Full screen frame, no line numbers (11k lines): > > Mac port 2.24s > emacs27-drawing branch: 3.13s > master: 5.3s How can the Mac port only see a change of 0.6s while the NS port sees a change of 1.3s, when the only change is turning line numbers on or off? Line numbers performance should surely be mostly independent of the UI toolkit? You know, my benchmarking is all over the place. I literally just did two runs at 11s and another two at 8.6s. Nothing changed. And I regularly see a code change produce an improvement, then undoing the change retaining the improvement. It's like rebuilding the exact same code base produces a completely different performance result. I suspect my Mac rides the CPU frequency continuously or something. -- Alan Third