From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Lars Ingebrigtsen Newsgroups: gmane.emacs.devel Subject: Re: Redisplay slower in Emacs 28 than Emacs 27 Date: Tue, 08 Dec 2020 18:29:24 +0100 Message-ID: <87czzkdx57.fsf@gnus.org> References: <877dptiro7.fsf@gnus.org> <87pn3lhcdd.fsf@gnus.org> <878sa9hbe2.fsf@gnus.org> <877dptfvae.fsf@gnus.org> <83czzl8qwu.fsf@gnu.org> <87sg8h78s8.fsf@gnus.org> <837dpt8lk5.fsf@gnu.org> <87pn3kjssr.fsf@gnus.org> <83im9c70vu.fsf@gnu.org> <87im9cfeej.fsf@gnus.org> <837dps6xyv.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="20396"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: ghe@sdf.org, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Dec 08 18:32:34 2020 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 1kmgqn-00058R-Q3 for ged-emacs-devel@m.gmane-mx.org; Tue, 08 Dec 2020 18:32:33 +0100 Original-Received: from localhost ([::1]:57446 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kmgqm-0002Xr-Rs for ged-emacs-devel@m.gmane-mx.org; Tue, 08 Dec 2020 12:32:32 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:48898) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kmgnv-0000xv-La for emacs-devel@gnu.org; Tue, 08 Dec 2020 12:29:35 -0500 Original-Received: from quimby.gnus.org ([2a01:4f9:2b:f0f::2]:43676) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kmgnu-0001Oq-1v; Tue, 08 Dec 2020 12:29:35 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=kXLMmjn7YDPvCsC5Sq36akbBIE5Kx1UCP+8uimCdntY=; b=u/AAGzM2sHbEMi948fD8l/eXpt 0aDFxY1RT7aAsu2hrmwXMDowry6OgljxEQv8coazRX1x8g2SsCAr+YlqOmrQlBX0S9Ff18fMm9UIl VQo9M2KKoF8JlJ6N+GFfABan3Q9j7XLzBjaDECYzxgHRAgZxU+TjSJSG0iGNAYx9DBs4=; Original-Received: from cm-84.212.202.86.getinternet.no ([84.212.202.86] helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kmgnm-0005Qw-62; Tue, 08 Dec 2020 18:29:29 +0100 Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAFVBMVEWhnpfLycNmY1yB fXWHg3s9Ojb///8nnAoXAAAAAWJLR0QGYWa4fQAAAAd0SU1FB+QMCBEYK3IGnoQAAAGeSURBVDjL jZJLbsQgDIYNwwEg7QFGDtlHCQdAQPcVau5/ldom75lK/RcI/GFjGwM4p5x1LOWcBY04AiggKeVW WQIJ8QnGecCeIYiTVdYgA3AAvhifPFiByuYDGMheYkqo0oAhEEziaMqeATBIGCKByxukMCeMpuV2 Ab6fOHF2sRfQh4yxAUrt9EYopbRKBOAJ5AI6bh64p9uHKWi5wwAOD9okbD07ARNlJ3bS5waiKdTE 4Ql3AJTQyU6Ay0AvACu8AkOA7KbEBj7iCri2EXIOrUToRgFoGPB2BbF7PhBrrWWmouWKF1I6/1hI Nc8TNoAh0Dt912sBbFkBUvMjdriBfge0L6gFVC5Mw+5L6hBfQrFLhPk4wVVOXY4KZELlTy7X1qG2 G7hjeC/1Flj3t8c/FNfVbIYHd7hsA0gDR0e5pmkZNc7+HkIDTy4OQ5W5CjTTLWoaafh+4leVWVyO JuJEhm/QFZI5A+q5llBLHai71P9mHRb5CzKLST5K0FD3D6uXj6pRr6BMuHmwT0Xf7D6nE9jDcHa4 gtqiXrV73MEv4YJ0bqdfTrIAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjAtMTItMDhUMTc6MjQ6NDMr MDA6MDBqBS74AAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIwLTEyLTA4VDE3OjI0OjQzKzAwOjAwG1iW RAAAAABJRU5ErkJggg== X-Now-Playing: Actress's _Karma & Desire_: "Many Seas, Many Rivers (feat. Sampha)" In-Reply-To: <837dps6xyv.fsf@gnu.org> (Eli Zaretskii's message of "Tue, 08 Dec 2020 18:53:28 +0200") Received-SPF: pass client-ip=2a01:4f9:2b:f0f::2; envelope-from=larsi@gnus.org; helo=quimby.gnus.org X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham 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:260573 Archived-At: Eli Zaretskii writes: >> So moving to Fequal is fine if we decide to have the Emacs 27 caching >> semantics. >> >> However, if we move to EQ semantics, the real speedup is that we don't >> have to call sxhash(img) on all the images -- and that's a slow >> operation, because it'll call hash_string on all the string contents, >> and if you have a large :data image, it'll compute that every time Emacs >> decides to redisplay that image. > > I don't think I follow: since an image spec can (and usually does) > include a file name, how can we use EQ? That would mean identical > file names will cause us to think an image isn't cached, right? Or > what am I missing? I'm not sure -- I don't quite understand what you mean here. Here's a spec: (setq spec '(image :type "xpm" :file "/tmp/foo.xpm")) Every time spec `spec' is redisplayed, EQ (spec, spec) will be true. We'd be going by "object identity" of the spec, and not looking at the contents at all. I.e., we'd start treating image specs as (immutable) objects (to make redisplay more efficient). -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no