From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.bugs Subject: bug#36032: 27.0.50; Massive GC when shift-selecting text in HELLO Date: Sat, 1 Jun 2019 09:45:40 +0200 Message-ID: <4a17488e-1d18-bd2c-d08d-fc41998223d4@gmx.at> References: <83d0jywgna.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------B1DEA8EFEBFB4A18DED549A2" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="30081"; mail-complaints-to="usenet@blaine.gmane.org" To: eliz@gnu.org, 36032@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Jun 01 09:46:13 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hWyiT-0007gk-7K for geb-bug-gnu-emacs@m.gmane.org; Sat, 01 Jun 2019 09:46:13 +0200 Original-Received: from localhost ([127.0.0.1]:54195 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hWyiR-0002mC-Ld for geb-bug-gnu-emacs@m.gmane.org; Sat, 01 Jun 2019 03:46:11 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:59761) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hWyiL-0002kp-DW for bug-gnu-emacs@gnu.org; Sat, 01 Jun 2019 03:46:06 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hWyiJ-0007Lz-EU for bug-gnu-emacs@gnu.org; Sat, 01 Jun 2019 03:46:05 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:51673) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hWyiI-0007LL-Nd for bug-gnu-emacs@gnu.org; Sat, 01 Jun 2019 03:46:03 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hWyiI-0008GE-HR for bug-gnu-emacs@gnu.org; Sat, 01 Jun 2019 03:46:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: martin rudalics Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 01 Jun 2019 07:46:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 36032 X-GNU-PR-Package: emacs X-Debbugs-Original-To: Eli Zaretskii , bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.155937515931743 (code B ref -1); Sat, 01 Jun 2019 07:46:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 1 Jun 2019 07:45:59 +0000 Original-Received: from localhost ([127.0.0.1]:36984 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hWyiF-0008Fv-F1 for submit@debbugs.gnu.org; Sat, 01 Jun 2019 03:45:59 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:45344) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hWyiD-0008Fd-Ls for submit@debbugs.gnu.org; Sat, 01 Jun 2019 03:45:58 -0400 Original-Received: from lists.gnu.org ([209.51.188.17]:46401) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hWyi8-0007Ew-FB for submit@debbugs.gnu.org; Sat, 01 Jun 2019 03:45:52 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:59726) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hWyi7-0002jl-59 for bug-gnu-emacs@gnu.org; Sat, 01 Jun 2019 03:45:52 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hWyi5-0007AZ-SA for bug-gnu-emacs@gnu.org; Sat, 01 Jun 2019 03:45:51 -0400 Original-Received: from mout.gmx.net ([212.227.17.22]:38853) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hWyi2-00076q-VY; Sat, 01 Jun 2019 03:45:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1559375142; bh=V1NkP5n01lCBoXj3ssYJMjOzRUzhBbJTdvj8MqjRQ78=; h=X-UI-Sender-Class:Subject:To:References:From:Date:In-Reply-To; b=Qd+4zAuu2Imkc45qAclMZdPSgP5pcNY8bmmmfCLh8FjR267dFM61E1E8hkPsP2v8v mGGi0dNLbM/v8vpPeqZtDt/0HVOPYOsEwkg461UEy5thXnkaE8zvX+BJ4NM0aY/ExM Rms/mGxE0oIHtvhdQcx/LoYcmgfMaRE116Iewf4c= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Original-Received: from [192.168.1.101] ([213.162.73.59]) by mail.gmx.com (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1M1po0-1hZAZJ47w0-002IVr; Sat, 01 Jun 2019 09:45:42 +0200 In-Reply-To: <83d0jywgna.fsf@gnu.org> Content-Language: de-DE X-Provags-ID: V03:K1:eyS+Ns7ejGN8cuzekBfnKBZa7yCasIKKjgVMd0IQlCJriKllCFY DgEmlzqMwSp5MJ8TXK3qXz3i4V6PXSH6FGytr8Lt99KK2kQr2e8eQ5XfMGWVN1toTFR1iox 5RNEx2lIDdprhSY/DvhiEISy/bG8JL314ywOYodlC+qEAGET3lYeqUlcwzBcclCrIYJElLZ EhuS40zhiTZ/+Vi8jk3Mg== X-UI-Out-Filterresults: notjunk:1;V03:K0:rNMwwZjQ9N4=:9ySAzioww+zpiAX+W2A7Up bB/HaGNfEC/P6ZRIfHg80ifPy2YUonjjXeJPCQLT1d7Fv9K5KiAHKZo97zNltqPLD5fb4ygS7 qj87lXOXKSobAqdBTQFlhzbziWPNO78Dxxo0VhrHDPL/B2ZcnSYB+cPO8vDU998iJr6AFIKaA EvrivaVfm9hk5YHHjY9kLiyRWNiGK6jwxL34i3h6aoH5RZoalpebZBmlVLp1J2zkgqb4heI73 6h0VGUZ11UF0jtas5DHYJlP5Z99VL3FhGJcMNmBVFEAwfum4r7hC4uuWfnEqaf1NEwSBqxuss SWqT8KCTwQd7WVkG65sz8J9h4/9olkQXJ+Sk2zatgFyooOxkzDnbPZ5UxrSilrkJp96VUTKUT l5iRBTow8HjR8Xjco3rehF7JTs3lfbWsNdYDRVcJ9Q9CXD4Y0zKET7+esSig+e0m4OgE+3Kmh +V+mB6XpAQkfEmkRwJa2iDyZaLE97xTp142A22g1S6qi2YfPKXx1MF25U8niNQyCeWBLVD5ID nMzT+DNhWpWxoJkztpOJRbk+m/E0/ZnYK/oL/j9dJJB2qTOVxH1ydDW3q3NnHGm7AEqF7QLpL jGyyNzRX6nDul+69LxQq4zmgAsfvlDlcSUlEksKbjryiX1cw5jHaf5X9ZrmOuFs+uXv5KccVX 71h2cTK/WsGrmJ4fEllbw8wH4yJzOA+gHGS+Hj/Uij4BeTPCH0vsMBQhBFb63ax0g04TPDTeD +AVkXgOdWGoY3R/NmC3lJC8YcB4FDDg3XHQ3C8tyNF7CpGEW7UsfIDvwGypRA+egUPJ+Pg48 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:159992 Archived-At: This is a multi-part message in MIME format. --------------B1DEA8EFEBFB4A18DED549A2 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit > To reproduce: > > emacs -Q > C-h h > C-SPC > C-f C-f C-f .... > > You will see a ~0.5 sec delay after each C-f, before its effect of > extending the region is visible. The reason is GC after every > keystroke, and it seems to be caused by the changes in commit 479f51a. > That commit caused mode-line-default-help-echo to be called each time > Emacs needs to redisplay the mode line, and that seems to produce lots > of garbage, at least with the HELLO file. Here the delays are considerably larger (one second at least) and there is at least one GC after each keystroke, sometimes two. But I can't confirm the remainder of what you say. Attached find two small files. Loading the first one (show-gc.el) with emacs -Q gives approximately the same behaviors with Emacs 26.2.50 (which does not have the 'mode-line-default-help-echo' function) and Emacs 27.0.50 - at least one GC per keystroke here. Loading the second one (show-gc-he.el) with emacs -Q (Emacs 27.0.50 only) shows that there is one call of 'mode-line-default-help-echo' per keystroke and I doubt that one such call can produce that much garbage. Also, customizing the option 'mode-line-default-help-echo' to nil does not make any performance difference here. All tested with 64-bit MSYS2 builds on Windows 10. If you get different results please tell me. Also I have not installed the Harfbuzz branch so OMMV. > If this function cannot be optimized to produce less garbage, could we > perhaps somehow cache the value of the help-echo and not recalculate > it unless something really changed? This is certainly a good idea. But I doubt it would have any impact in the case at hand. martin --------------B1DEA8EFEBFB4A18DED549A2 Content-Type: text/plain; charset=UTF-8; name="show-gc.el" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="show-gc.el" KGRlZnZhciBnYyAwKQ0KKGFkZC1ob29rICdwb3N0LWdjLWhvb2sgKGxhbWJkYSAoKSAoc2V0 cSBnYyAoMSsgZ2MpKSkpDQooZGVmdW4gc2hvdy1nYyAoKSAobWVzc2FnZSAiZ2M6ICVzIiBn YykpDQooYWRkLWhvb2sgJ3Bvc3QtY29tbWFuZC1ob29rICdzaG93LWdjKQ0K --------------B1DEA8EFEBFB4A18DED549A2 Content-Type: text/plain; charset=UTF-8; name="show-gc-he.el" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="show-gc-he.el" KGRlZnZhciBnYyAwKQ0KKGRlZnZhciBoZSAwKQ0KKGFkZC1ob29rICdwb3N0LWdjLWhvb2sg KGxhbWJkYSAoKSAoc2V0cSBnYyAoMSsgZ2MpKSkpDQooZGVmdW4gc2hvdy1nYy1oZSAoKSAo bWVzc2FnZSAiZ2M6ICVzIC4uLiBoZTogJXMiIGdjIGhlKSkNCihhZGQtaG9vayAncG9zdC1j b21tYW5kLWhvb2sgJ3Nob3ctZ2MtaGUpDQoNCihkZWZ1biBtb2RlLWxpbmUtZGVmYXVsdC1o ZWxwLWVjaG8gKHdpbmRvdykNCiAgIlJldHVybiBkZWZhdWx0IGhlbHAgZWNobyB0ZXh0IGZv ciBXSU5ET1cncyBtb2RlIGxpbmUuIg0KICAobGV0KiAoKGZyYW1lICh3aW5kb3ctZnJhbWUg d2luZG93KSkNCiAgICAgICAgIChsaW5lLTFhDQogICAgICAgICAgOzsgU2hvdyB0ZXh0IHRv IHNlbGVjdCB3aW5kb3cgb25seSBpZiB0aGUgd2luZG93IGlzIG5vdA0KICAgICAgICAgIDs7 IHNlbGVjdGVkLg0KICAgICAgICAgIChub3QgKGVxIHdpbmRvdyAoZnJhbWUtc2VsZWN0ZWQt d2luZG93IGZyYW1lKSkpKQ0KICAgICAgICAgKGxpbmUtMWINCiAgICAgICAgICA7OyBTaG93 IHRleHQgdG8gZHJhZyBtb2RlIGxpbmUgaWYgZWl0aGVyIHRoZSB3aW5kb3cgaXMgbm90DQog ICAgICAgICAgOzsgYXQgdGhlIGJvdHRvbSBvZiBpdHMgZnJhbWUgb3IgdGhlIG1pbmlidWZm ZXIgd2luZG93IG9mDQogICAgICAgICAgOzsgdGhpcyBmcmFtZSBjYW4gYmUgcmVzaXplZC4g IFRoaXMgbWF0Y2hlcyBhIGNvcnJlc3BvbmRpbmcNCiAgICAgICAgICA7OyBjaGVjayBpbiBg bW91c2UtZHJhZy1tb2RlLWxpbmUnLg0KICAgICAgICAgIChvciAobm90ICh3aW5kb3ctYXQt c2lkZS1wIHdpbmRvdyAnYm90dG9tKSkNCiAgICAgICAgICAgICAgKGxldCAoKG1pbmktd2lu ZG93IChtaW5pYnVmZmVyLXdpbmRvdyBmcmFtZSkpKQ0KICAgICAgICAgICAgICAgIChhbmQg KGVxIGZyYW1lICh3aW5kb3ctZnJhbWUgbWluaS13aW5kb3cpKQ0KICAgICAgICAgICAgICAg ICAgICAgKG9yIChtaW5pYnVmZmVyLXdpbmRvdy1hY3RpdmUtcCBtaW5pLXdpbmRvdykNCiAg ICAgICAgICAgICAgICAgICAgICAgICAobm90IHJlc2l6ZS1taW5pLXdpbmRvd3MpKSkpKSkN CiAgICAgICAgIChsaW5lLTINCiAgICAgICAgICA7OyBTaG93IHRleHQgbWFrZSB3aW5kb3cg b2NjdXB5IHRoZSB3aG9sZSBmcmFtZQ0KICAgICAgICAgIDs7IG9ubHkgaWYgaXQgZG9lc24n dCBhbHJlYWR5IGRvIHRoYXQuDQogICAgICAgICAgKG5vdCAoZXEgd2luZG93IChmcmFtZS1y b290LXdpbmRvdyBmcmFtZSkpKSkNCiAgICAgICAgIChsaW5lLTMNCiAgICAgICAgICA7OyBT aG93IHRleHQgdG8gZGVsZXRlIHdpbmRvdyBvbmx5IGlmIHRoYXQncyBwb3NzaWJsZS4NCiAg ICAgICAgICAobm90IChlcSB3aW5kb3cgKGZyYW1lLXJvb3Qtd2luZG93IGZyYW1lKSkpKSkN CiAgICAoc2V0cSBoZSAoMSsgaGUpKQ0KICAgICh3aGVuIChvciBsaW5lLTFhIGxpbmUtMWIg bGluZS0yIGxpbmUtMykNCiAgICAgIChjb25jYXQNCiAgICAgICAod2hlbiAob3IgbGluZS0x YSBsaW5lLTFiKQ0KICAgICAgICAgKGNvbmNhdA0KICAgICAgICAgICJtb3VzZS0xOiAiDQog ICAgICAgICAgKHdoZW4gbGluZS0xYSAiU2VsZWN0IHdpbmRvdyIpDQogICAgICAgICAgKHdo ZW4gbGluZS0xYg0KICAgICAgICAgICAgKGlmIGxpbmUtMWEgIiAoZHJhZyB0byByZXNpemUp IiAiRHJhZyB0byByZXNpemUiKSkNCiAgICAgICAgICAod2hlbiAob3IgbGluZS0yIGxpbmUt MykgIlxuIikpKQ0KICAgICAgICh3aGVuIGxpbmUtMg0KICAgICAgICAgKGNvbmNhdA0KICAg ICAgICAgICJtb3VzZS0yOiBNYWtlIHdpbmRvdyBvY2N1cHkgd2hvbGUgZnJhbWUiDQogICAg ICAgICAgKHdoZW4gbGluZS0zICJcbiIpKSkNCiAgICAgICAod2hlbiBsaW5lLTMNCiAgICAg ICAgICJtb3VzZS0zOiBSZW1vdmUgd2luZG93IGZyb20gZnJhbWUiKSkpKSkNCg== --------------B1DEA8EFEBFB4A18DED549A2--