X-Loop: help-debbugs@HIDDEN Subject: bug#79035: Remove micro-optimization for Funintern for performance Resent-From: Lynn Winebarger <owinebar@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Thu, 17 Jul 2025 03:26:02 +0000 Resent-Message-ID: <handler.79035.B.175272274931516 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: report 79035 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 79035 <at> debbugs.gnu.org, mattias.engdegard@HIDDEN, monnier@HIDDEN X-Debbugs-Original-To: bug-gnu-emacs@HIDDEN, Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>, Stefan Monnier <monnier@HIDDEN> Received: via spool by submit <at> debbugs.gnu.org id=B.175272274931516 (code B ref -1); Thu, 17 Jul 2025 03:26:02 +0000 Received: (at submit) by debbugs.gnu.org; 17 Jul 2025 03:25:49 +0000 Received: from localhost ([127.0.0.1]:52076 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ucFFk-0008CE-Cf for submit <at> debbugs.gnu.org; Wed, 16 Jul 2025 23:25:49 -0400 Received: from lists.gnu.org ([2001:470:142::17]:48724) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <owinebar@HIDDEN>) id 1ucFFh-0008BP-8Y for submit <at> debbugs.gnu.org; Wed, 16 Jul 2025 23:25:46 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <owinebar@HIDDEN>) id 1ucFFU-0002Hz-KB for bug-gnu-emacs@HIDDEN; Wed, 16 Jul 2025 23:25:33 -0400 Received: from mail-wr1-x42f.google.com ([2a00:1450:4864:20::42f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <owinebar@HIDDEN>) id 1ucFFS-0006gn-DJ for bug-gnu-emacs@HIDDEN; Wed, 16 Jul 2025 23:25:32 -0400 Received: by mail-wr1-x42f.google.com with SMTP id ffacd0b85a97d-3a4e575db1aso7377f8f.2 for <bug-gnu-emacs@HIDDEN>; Wed, 16 Jul 2025 20:25:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1752722728; x=1753327528; darn=gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=3kohXF/132v+uU4NIdeKhHDRW0IGPk+Qi4cdz2I+NCQ=; b=DuayuuuzxWruSXobFmLsyHM5tEXbL4GtsiOuFfRIW4ok5krmoch57bHvgvmrpV7zxk gqA5AiiMfAXd2morRgSh4GrbzN4Yd6IhVDIu54Okt5ZVbOGmpITnzSgd3PbhwJNu0v8c VrhmBrKUblWMaFg9ih/C+K50wjvQS8bYV5zpozl+TyVHZIdcn+oOZI8tDggiZviDdwEK eQWaD+D73wkmYFwI9xuewg6Pl03lDdZnhWCqHo2Fo7FQFEBTJPH1WaR/SFBUxnJXT5rF K6Cv+Tz5X4Nj7C4qtyqkFAbaU/+LgCE9QeylNMVvnn4rs9VI1hRqfygLHwv1iyF7jLwK OKcQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752722728; x=1753327528; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=3kohXF/132v+uU4NIdeKhHDRW0IGPk+Qi4cdz2I+NCQ=; b=G0ORm9zSRre4hMfd5+3+7yA0RA7E7S1bvCZ2Mov/pkMRDkmUKILsI1rVEKUE82huWz h5mo5dJrCZmOSneL4FQM0EZvBljpalCcOlPldx3jUSjL9SVsvD2NeEBtUrRblL+BJKyF +dEBMNYHy2mmHNamwuXEecs1DUGxtSScLL4BdxpZ/eOWMM5aDvz/KNx72MCMO6oZv04k BoBsupSQTxuoBdeZ45E/xhSBVTw6GkdvwJimjqm8vvADarv4Ou6WWMBwGYzZ1jHgSgLH PJpIHu3rL0TT2+A/FLKMuY+Me+8el4yn/3jvhcx1c7zvbAtSEHx1/Wx5WgebZdJrzta1 kv6w== X-Gm-Message-State: AOJu0YyxBrP3JccUA4wYRPHFahGoAHLYIZlLMqFw2dfrp3jPCGYQfiv/ CJmKdf7KgceyK7LS/NINfs3XjsuJGsx9tywn1NGn7IMndX1t2c/G3cVMmDV159Vt6muAIQyp0zb MYPbXNXRwXOBSEEDqntcOJ+SrFpKf1bVoOprJ X-Gm-Gg: ASbGncsrnwxvMimwAT5E3kNuyrAv/8fXxrquFoHJW38YeK16+MXq2FUEuF9u6Bm7g50 VL7AvBNJCii4W/klpg5M5mA1xyPpwKZ2LrHgeHZZZ0XGUZKW9QbgKv0/K5mC4i0l/vYC2HZ8b7F j6TAYi2jgS0HWZPn5n0sFei3NrM3N580eLrNIWRKwYm+meIcFxb1prPaJNXgCjB+Jiye7A3EA8s VAEuxslhcMtZfZBQJE= X-Google-Smtp-Source: AGHT+IHPTghOTKOdRyTkxkrsEPHisUQ6UqBsEB4YptVxLucQSaqfofnFVGp6E5lW5Lab0xPgB71LwbC85U6EuQK66BY= X-Received: by 2002:a05:6000:2805:b0:3a4:f7d9:9617 with SMTP id ffacd0b85a97d-3b60dd11fa2mr1149532f8f.0.1752722727756; Wed, 16 Jul 2025 20:25:27 -0700 (PDT) MIME-Version: 1.0 From: Lynn Winebarger <owinebar@HIDDEN> Date: Wed, 16 Jul 2025 23:25:15 -0400 X-Gm-Features: Ac12FXwoYiDmHoc-DVvw3-X2Mw3c-UtCCMUmqLyNBmha92ucq-PbkF-wIHYmy9Q Message-ID: <CAM=F=bC=OLQh4BQvUzCh2BrCv6qVtSip8U1SSR5iJwvUEKWknQ@HIDDEN> Content-Type: multipart/mixed; boundary="000000000000940367063a178f1d" Received-SPF: pass client-ip=2a00:1450:4864:20::42f; envelope-from=owinebar@HIDDEN; helo=mail-wr1-x42f.google.com 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, FREEMAIL_FROM=0.001, 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-Spam-Score: 1.0 (+) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.0 (/) --000000000000940367063a178f1d Content-Type: text/plain; charset="UTF-8" Based on my measurement of my reentrant reader submission, I tried just eliminating the static variable used to "optimize" out a redundant lookup by stashing the index in a static variable used only by Funintern. See attached - I just repeated the lookup code in Funintern, removed the assignment from oblookup, and eliminated the static variable. At least for -O0, storing this information in the frequently called oblookup to save a lookup in the very infrequently called Funintern is a bit of a pessimization. Based on summing the profiles of all the byte-compile jobs, and filtering for obarray-related functions in read.c, I get the following for commit a8b65860a5e28ee0867e8506a17d74d4a9b7783a (the cumulative is all functions in lread.c, most of which I am eliding): Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls s/call s/call name 13.44 31.82 8.68 79508607 0.00 0.00 oblookup 0.85 58.97 0.55 260 2.12 2.21 grow_obarray 0.84 59.51 0.54 83352123 0.00 0.00 obarray_index 0.81 60.03 0.52 78691233 0.00 0.00 oblookup_considering_shorthand 0.37 62.19 0.24 6858863 0.00 0.00 intern_sym 0.29 63.03 0.19 4635384 0.00 0.00 read_internal_start 0.08 64.05 0.05 20570557 0.00 0.00 mapatoms_1 0.06 64.23 0.04 1060 0.04 0.04 map_obarray 0.05 64.30 0.03 6858863 0.00 0.00 intern_driver 0.05 64.33 0.03 1143939 0.00 0.00 Fintern 0.03 64.48 0.02 Funintern 0.02 64.57 0.01 66751 0.00 0.00 Fintern_soft 0.00 64.59 0.00 22626 0.00 0.00 Flread__substitute_object_in_subtree 0.00 64.59 0.00 22626 0.00 0.00 substitute_object_recurse 0.00 64.59 0.00 13223 0.00 0.00 Fobarray_make 0.00 64.59 0.00 13223 0.00 0.00 allocate_obarray 0.00 64.59 0.00 13223 0.00 0.00 make_obarray 0.00 64.59 0.00 10916 0.00 0.00 Fobarrayp 0.00 64.59 0.00 5032 0.00 0.00 Flocate_file_internal 0.00 64.59 0.00 2522 0.00 0.00 intern_1 0.00 64.59 0.00 1043 0.00 0.00 Fmapatoms The same commit with the attached patch: 13.22 31.13 8.23 79563723 0.00 0.00 oblookup 0.67 57.22 0.42 264 1.59 1.66 grow_obarray 0.61 57.60 0.38 83407339 0.00 0.00 obarray_index 0.61 57.98 0.38 78745509 0.00 0.00 oblookup_considering_shorthand 0.25 60.64 0.16 6858324 0.00 0.00 intern_sym 0.19 61.32 0.12 4635494 0.00 0.00 read_internal_start 0.11 61.59 0.07 20669351 0.00 0.00 mapatoms_1 0.11 61.66 0.07 1067 0.07 0.07 map_obarray 0.10 61.84 0.06 Funintern 0.05 62.10 0.03 66913 0.00 0.00 Fintern_soft 0.01 62.27 0.01 6858324 0.00 0.00 intern_driver 0.00 62.28 0.00 1146143 0.00 0.00 Fintern 0.00 62.28 0.00 22460 0.00 0.00 Flread__substitute_object_in_subtree 0.00 62.28 0.00 22460 0.00 0.00 substitute_object_recurse 0.00 62.28 0.00 13219 0.00 0.00 Fobarray_make 0.00 62.28 0.00 13219 0.00 0.00 allocate_obarray 0.00 62.28 0.00 13219 0.00 0.00 make_obarray 0.00 62.28 0.00 10918 0.00 0.00 Fobarrayp 0.00 62.28 0.00 5031 0.00 0.00 Flocate_file_internal 0.00 62.28 0.00 2522 0.00 0.00 intern_1 0.00 62.28 0.00 1050 0.00 0.00 Fmapatoms The total reported cpu time for a8b65860a5e28ee0867e8506a17d74d4a9b7783a is 3479.51s, and with the patch it is 3460.69. You can see Funintern is more expensive, but also that in all those jobs no actual calls were recorded in either case. I see similar differences for these functions when I compare results for commit 2bdcf0250acecdb0719203ae711aedf5baad1783. As a reminder, I submitted my assignment paperwork a couple of years ago, although this seems like a pretty trivial change. Lynn --000000000000940367063a178f1d Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Remove-micro-optimization-for-Funintern.patch" Content-Disposition: attachment; filename="0001-Remove-micro-optimization-for-Funintern.patch" Content-Transfer-Encoding: base64 Content-ID: <f_md6t9onv0> X-Attachment-Id: f_md6t9onv0 RnJvbSBjNDgxOGJhMDFmOTQ3MTc4NzZmNzcyZjlhMGI1ZTY3ZDJkMzJkNTMyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBPbm5pZSBMeW5uIFdpbmViYXJnZXIgPG93aW5lYmFyQGdtYWls LmNvbT4KRGF0ZTogV2VkLCAxNiBKdWwgMjAyNSAyMzowNDowNyAtMDQwMApTdWJqZWN0OiBbUEFU Q0hdIFJlbW92ZSBtaWNyby1vcHRpbWl6YXRpb24gZm9yIEZ1bmludGVybgoKKGxyZWFkLmMpOiBS ZW1vdmUgc3RhdGljIHZhcmlhYmxlIG9ibG9va3VwX2xhc3RfYnVja2V0X251bWJlci4gIFJlbW92 YWwKYXBwZWFycyB0byByZWR1Y2UgZXhlY3V0aW9uIHRpbWUgb2Ygb2JhcnJheSBmdW5jdGlvbnMg YnkgYWJvdXQgNiUsIHdoaWxlCnRoZSB2YXJpYWJsZSB3YXMgb25seSB1c2VkIHRvIGF2b2lkIGEg cmVkdW5kYW50IGxvb2t1cCBpbiB0aGUgcmFyZWx5CmNhbGxlZCBGdW5pbnRlcm4uCi0tLQogc3Jj L2xyZWFkLmMgfCA1MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0t LS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDMzIGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyYy9scmVhZC5jIGIvc3JjL2xyZWFkLmMKaW5kZXggNWI3ODQ4 YzMxMTguLmFkMjVmZTA1MmExIDEwMDY0NAotLS0gYS9zcmMvbHJlYWQuYworKysgYi9zcmMvbHJl YWQuYwpAQCAtNDkyNywxMCArNDkyNyw2IEBAIHN0cmluZ190b19udW1iZXIgKGNoYXIgY29uc3Qg KnN0cmluZywgaW50IGJhc2UsIHB0cmRpZmZfdCAqcGxlbikKIAwKIHN0YXRpYyBMaXNwX09iamVj dCBpbml0aWFsX29iYXJyYXk7CiAKLS8qIGBvYmxvb2t1cCcgc3RvcmVzIHRoZSBidWNrZXQgbnVt YmVyIGhlcmUsIGZvciB0aGUgc2FrZSBvZiBGdW5pbnRlcm4uICAqLwotCi1zdGF0aWMgc2l6ZV90 IG9ibG9va3VwX2xhc3RfYnVja2V0X251bWJlcjsKLQogc3RhdGljIExpc3BfT2JqZWN0IG1ha2Vf b2JhcnJheSAodW5zaWduZWQgYml0cyk7CiAKIC8qIFNsb3cgcGF0aCBvYmFycmF5IGNoZWNrOiBy ZXR1cm4gdGhlIG9iYXJyYXkgdG8gdXNlIG9yIHNpZ25hbCBhbiBlcnJvci4gICovCkBAIC01MTQx LDYgKzUxMzcsMTQgQEAgREVGVU4gKCJpbnRlcm4tc29mdCIsIEZpbnRlcm5fc29mdCwgU2ludGVy bl9zb2Z0LCAxLCAyLCAwLAogICAgIH0KIH0KIAwKKy8qIEJ1Y2tldCBpbmRleCBvZiB0aGUgc3Ry aW5nIFNUUiBvZiBsZW5ndGggU0laRV9CWVRFIGJ5dGVzIGluIG9iYXJyYXkgT0EuICAqLworc3Rh dGljIHB0cmRpZmZfdAorb2JhcnJheV9pbmRleCAoc3RydWN0IExpc3BfT2JhcnJheSAqb2EsIGNv bnN0IGNoYXIgKnN0ciwgcHRyZGlmZl90IHNpemVfYnl0ZSkKK3sKKyAgRU1BQ1NfVUlOVCBoYXNo ID0gaGFzaF9jaGFyX2FycmF5IChzdHIsIHNpemVfYnl0ZSk7CisgIHJldHVybiBrbnV0aF9oYXNo IChyZWR1Y2VfZW1hY3NfdWludF90b19oYXNoX2hhc2ggKGhhc2gpLCBvYS0+c2l6ZV9iaXRzKTsK K30KKwogREVGVU4gKCJ1bmludGVybiIsIEZ1bmludGVybiwgU3VuaW50ZXJuLCAyLCAyLCAwLAog ICAgICAgIGRvYzogLyogRGVsZXRlIHRoZSBzeW1ib2wgbmFtZWQgTkFNRSwgaWYgYW55LCBmcm9t IE9CQVJSQVkuCiBUaGUgdmFsdWUgaXMgdCBpZiBhIHN5bWJvbCB3YXMgZm91bmQgYW5kIGRlbGV0 ZWQsIG5pbCBvdGhlcndpc2UuCkBAIC01MTc0LDE0ICs1MTc4LDE1IEBAIERFRlVOICgidW5pbnRl cm4iLCBGdW5pbnRlcm4sIFN1bmludGVybiwgMiwgMiwgMCwKIAkJCQkJU0NIQVJTIChzdHJpbmcp LCBTQllURVMgKHN0cmluZyksCiAJCQkJCSZsb25naGFuZCwgJmxvbmdoYW5kX2NoYXJzLAogCQkJ CQkmbG9uZ2hhbmRfYnl0ZXMpOwotICBpZiAobG9uZ2hhbmQpCi0gICAgeGZyZWUobG9uZ2hhbmQp OwogCi0gIGlmIChGSVhOVU1QICh0ZW0pKQotICAgIHJldHVybiBRbmlsOworICBpZiAoRklYTlVN UCAodGVtKQogICAvKiBJZiBhcmcgd2FzIGEgc3ltYm9sLCBkb24ndCBkZWxldGUgYW55dGhpbmcg YnV0IHRoYXQgc3ltYm9sIGl0c2VsZi4gICovCi0gIGlmIChCQVJFX1NZTUJPTF9QIChuYW1lKSAm JiAhQkFTRV9FUSAobmFtZSwgdGVtKSkKLSAgICByZXR1cm4gUW5pbDsKKyAgICAgIHx8IChCQVJF X1NZTUJPTF9QIChuYW1lKSAmJiAhQkFTRV9FUSAobmFtZSwgdGVtKSkpCisgICAgeworICAgICAg aWYgKGxvbmdoYW5kKQorCXhmcmVlIChsb25naGFuZCk7CisgICAgICByZXR1cm4gUW5pbDsKKyAg ICB9CiAKICAgLyogVGhlcmUgYXJlIHBsZW50eSBvZiBvdGhlciBzeW1ib2xzIHdoaWNoIHdpbGwg c2NyZXcgdXAgdGhlIEVtYWNzCiAgICAgIHNlc3Npb24gaWYgd2UgdW5pbnRlcm4gdGhlbSwgYXMg d2VsbCBhcyBldmVuIG1vcmUgd2F5cyB0byB1c2UKQEAgLTUxOTMsNyArNTE5OCwyNCBAQCBERUZV TiAoInVuaW50ZXJuIiwgRnVuaW50ZXJuLCBTdW5pbnRlcm4sIDIsIDIsIDAsCiAgIHN0cnVjdCBM aXNwX1N5bWJvbCAqc3ltID0gWEJBUkVfU1lNQk9MICh0ZW0pOwogICBzeW0tPnUucy5pbnRlcm5l ZCA9IFNZTUJPTF9VTklOVEVSTkVEOwogCi0gIHB0cmRpZmZfdCBpZHggPSBvYmxvb2t1cF9sYXN0 X2J1Y2tldF9udW1iZXI7CisgIHB0cmRpZmZfdCBpZHggPSAtMTsKKyAgeworICAgIC8qIFJlbW92 ZWQgc3RhdGljIHZhcmlhYmxlIG9ibG9va3VwX2xhc3RfYnVja2V0X251bWJlciBtaWNyby1vcHRp bWl6YXRpb24KKyAgICAgICBEb24ndCB1c2UgYSBzdGF0aWMgdmFyaWFibGUganVzdCB0byBhdm9p ZCB0aGlzCisgICAgICAgLSBob3cgZnJlcXVlbnRseSB1c2VkIGlzIHVuaW50ZXJuIHRoYXQgdXNp bmcgYSBzdGF0aWMgdmFyaWFibGUKKyAgICAgICB0byBvcHRpbWl6ZSBhd2F5IHRoaXMgcmVkdW5k YW50IGluZGV4IGNhbGN1bGF0aW9uIHdvdWxkIGJlCisgICAgICAgd29ydGggYWRkaW5nIGEgc2Vj b25kIHJlZmVyZW5jZSBwYXJhbWV0ZXI/ICovCisgICAgc3RydWN0IExpc3BfT2JhcnJheSAqbyA9 IFhPQkFSUkFZIChvYmFycmF5KTsKKyAgICBpZiAobG9uZ2hhbmQpCisgICAgICB7CisJaWR4ID0g b2JhcnJheV9pbmRleCAobywgbG9uZ2hhbmQsIGxvbmdoYW5kX2J5dGVzKTsKKwl4ZnJlZSAobG9u Z2hhbmQpOworICAgICAgfQorICAgIGVsc2UKKyAgICAgIHsKKwlpZHggPSBvYmFycmF5X2luZGV4 IChvLFNTREFUQSAoc3RyaW5nKSwgU0JZVEVTIChzdHJpbmcpKTsKKyAgICAgIH0KKyAgfQogICBM aXNwX09iamVjdCAqbG9jID0gJlhPQkFSUkFZIChvYmFycmF5KS0+YnVja2V0c1tpZHhdOwogCiAg IGVhc3NlcnQgKEJBUkVfU1lNQk9MX1AgKCpsb2MpKTsKQEAgLTUyMTgsMTQgKzUyNDAsNiBAQCBE RUZVTiAoInVuaW50ZXJuIiwgRnVuaW50ZXJuLCBTdW5pbnRlcm4sIDIsIDIsIDAsCiB9CiAMCiAK LS8qIEJ1Y2tldCBpbmRleCBvZiB0aGUgc3RyaW5nIFNUUiBvZiBsZW5ndGggU0laRV9CWVRFIGJ5 dGVzIGluIG9iYXJyYXkgT0EuICAqLwotc3RhdGljIHB0cmRpZmZfdAotb2JhcnJheV9pbmRleCAo c3RydWN0IExpc3BfT2JhcnJheSAqb2EsIGNvbnN0IGNoYXIgKnN0ciwgcHRyZGlmZl90IHNpemVf Ynl0ZSkKLXsKLSAgRU1BQ1NfVUlOVCBoYXNoID0gaGFzaF9jaGFyX2FycmF5IChzdHIsIHNpemVf Ynl0ZSk7Ci0gIHJldHVybiBrbnV0aF9oYXNoIChyZWR1Y2VfZW1hY3NfdWludF90b19oYXNoX2hh c2ggKGhhc2gpLCBvYS0+c2l6ZV9iaXRzKTsKLX0KLQogLyogUmV0dXJuIHRoZSBzeW1ib2wgaW4g T0JBUlJBWSB3aG9zZSBuYW1lIG1hdGNoZXMgdGhlIHN0cmluZwogICAgb2YgU0laRSBjaGFyYWN0 ZXJzIChTSVpFX0JZVEUgYnl0ZXMpIGF0IFBUUi4KICAgIElmIHRoZXJlIGlzIG5vIHN1Y2ggc3lt Ym9sLCByZXR1cm4gdGhlIGludGVnZXIgYnVja2V0IG51bWJlciBvZgpAQCAtNTI0MCw3ICs1MjU0 LDYgQEAgb2Jsb29rdXAgKExpc3BfT2JqZWN0IG9iYXJyYXksIHJlZ2lzdGVyIGNvbnN0IGNoYXIg KnB0ciwgcHRyZGlmZl90IHNpemUsIHB0cmRpZmYKICAgcHRyZGlmZl90IGlkeCA9IG9iYXJyYXlf aW5kZXggKG8sIHB0ciwgc2l6ZV9ieXRlKTsKICAgTGlzcF9PYmplY3QgYnVja2V0ID0gby0+YnVj a2V0c1tpZHhdOwogCi0gIG9ibG9va3VwX2xhc3RfYnVja2V0X251bWJlciA9IGlkeDsKICAgaWYg KCFCQVNFX0VRIChidWNrZXQsIG1ha2VfZml4bnVtICgwKSkpCiAgICAgewogICAgICAgTGlzcF9P YmplY3Qgc3ltID0gYnVja2V0OwotLSAKMi41MC4wCgo= --000000000000940367063a178f1d--
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Lynn Winebarger <owinebar@HIDDEN> Subject: bug#79035: Acknowledgement (Remove micro-optimization for Funintern for performance) Message-ID: <handler.79035.B.175272274931516.ack <at> debbugs.gnu.org> References: <CAM=F=bC=OLQh4BQvUzCh2BrCv6qVtSip8U1SSR5iJwvUEKWknQ@HIDDEN> X-Gnu-PR-Message: ack 79035 X-Gnu-PR-Package: emacs Reply-To: 79035 <at> debbugs.gnu.org Date: Thu, 17 Jul 2025 03:26:02 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): bug-gnu-emacs@HIDDEN If you wish to submit further information on this problem, please send it to 79035 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 79035: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D79035 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
X-Loop: help-debbugs@HIDDEN Subject: bug#79035: Remove micro-optimization for Funintern for performance Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Thu, 17 Jul 2025 05:05:02 +0000 Resent-Message-ID: <handler.79035.B79035.175272869822655 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 79035 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Lynn Winebarger <owinebar@HIDDEN> Cc: mattias.engdegard@HIDDEN, monnier@HIDDEN, 79035 <at> debbugs.gnu.org Received: via spool by 79035-submit <at> debbugs.gnu.org id=B79035.175272869822655 (code B ref 79035); Thu, 17 Jul 2025 05:05:02 +0000 Received: (at 79035) by debbugs.gnu.org; 17 Jul 2025 05:04:58 +0000 Received: from localhost ([127.0.0.1]:52376 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ucGni-0005tL-AU for submit <at> debbugs.gnu.org; Thu, 17 Jul 2025 01:04:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36572) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1ucGnf-0005t6-ER for 79035 <at> debbugs.gnu.org; Thu, 17 Jul 2025 01:04:56 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1ucGna-0004ZH-3s; Thu, 17 Jul 2025 01:04:50 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=MGQKM5LKzIBIl54kt56lghMpgRqUC4PlbRWPzH4/Pa8=; b=Wn/o4eK/J5Az gY0NxhZ/IRNFCXq0azVnRT2xVc+BXW858hr5XOs0MkQbZhZMazML9stSWsr/DvCmMS4t7pnLr2N/a fuBFBPLF9dDLXy6bGQTPiVXy6MJS7FrnAacdQ2AWQVt8Dr8A7rpo5Jues0bCniaCVlykpa8PpCIpZ OXcKUCs5nSDQE9UY8c09GZaxuOfBy9XuuVZSlN2jqydk+cf0IHkw9BwgHDbDhdW+eO+RoBbVci9KA YIEi8WAPA9dznPg3RcJH7vMcKn/PSOIm235nRtrFwXF1n9VqSuN1mSL/MPOMEpVTqwxubDmm3oW0k 7VNdYxncqNJaxleNc43gbw==; Date: Thu, 17 Jul 2025 08:04:47 +0300 Message-Id: <865xfrif0w.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-Reply-To: <CAM=F=bC=OLQh4BQvUzCh2BrCv6qVtSip8U1SSR5iJwvUEKWknQ@HIDDEN> (message from Lynn Winebarger on Wed, 16 Jul 2025 23:25:15 -0400) References: <CAM=F=bC=OLQh4BQvUzCh2BrCv6qVtSip8U1SSR5iJwvUEKWknQ@HIDDEN> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: Lynn Winebarger <owinebar@HIDDEN> > Date: Wed, 16 Jul 2025 23:25:15 -0400 > > Based on my measurement of my reentrant reader submission, I tried > just eliminating the static variable used to "optimize" out a > redundant lookup by stashing the index in a static variable used only > by Funintern. See attached - I just repeated the lookup code in > Funintern, removed the assignment from oblookup, and eliminated the > static variable. At least for -O0, storing this information in the > frequently called oblookup to save a lookup in the very infrequently > called Funintern is a bit of a pessimization. Based on summing the > profiles of all the byte-compile jobs, and filtering for > obarray-related functions in read.c, I get the following for commit > a8b65860a5e28ee0867e8506a17d74d4a9b7783a (the cumulative is all > functions in lread.c, most of which I am eliding): > Each sample counts as 0.01 seconds. > % cumulative self self total > time seconds seconds calls s/call s/call name > 13.44 31.82 8.68 79508607 0.00 0.00 oblookup > 0.85 58.97 0.55 260 2.12 2.21 grow_obarray > 0.84 59.51 0.54 83352123 0.00 0.00 obarray_index > 0.81 60.03 0.52 78691233 0.00 0.00 > oblookup_considering_shorthand > 0.37 62.19 0.24 6858863 0.00 0.00 intern_sym > 0.29 63.03 0.19 4635384 0.00 0.00 read_internal_start > 0.08 64.05 0.05 20570557 0.00 0.00 mapatoms_1 > 0.06 64.23 0.04 1060 0.04 0.04 map_obarray > 0.05 64.30 0.03 6858863 0.00 0.00 intern_driver > 0.05 64.33 0.03 1143939 0.00 0.00 Fintern > 0.03 64.48 0.02 Funintern > 0.02 64.57 0.01 66751 0.00 0.00 Fintern_soft > 0.00 64.59 0.00 22626 0.00 0.00 > Flread__substitute_object_in_subtree > 0.00 64.59 0.00 22626 0.00 0.00 substitute_object_recurse > 0.00 64.59 0.00 13223 0.00 0.00 Fobarray_make > 0.00 64.59 0.00 13223 0.00 0.00 allocate_obarray > 0.00 64.59 0.00 13223 0.00 0.00 make_obarray > 0.00 64.59 0.00 10916 0.00 0.00 Fobarrayp > 0.00 64.59 0.00 5032 0.00 0.00 Flocate_file_internal > 0.00 64.59 0.00 2522 0.00 0.00 intern_1 > 0.00 64.59 0.00 1043 0.00 0.00 Fmapatoms > > The same commit with the attached patch: > 13.22 31.13 8.23 79563723 0.00 0.00 oblookup > 0.67 57.22 0.42 264 1.59 1.66 grow_obarray > 0.61 57.60 0.38 83407339 0.00 0.00 obarray_index > 0.61 57.98 0.38 78745509 0.00 0.00 > oblookup_considering_shorthand > 0.25 60.64 0.16 6858324 0.00 0.00 intern_sym > 0.19 61.32 0.12 4635494 0.00 0.00 read_internal_start > 0.11 61.59 0.07 20669351 0.00 0.00 mapatoms_1 > 0.11 61.66 0.07 1067 0.07 0.07 map_obarray > 0.10 61.84 0.06 Funintern > 0.05 62.10 0.03 66913 0.00 0.00 Fintern_soft > 0.01 62.27 0.01 6858324 0.00 0.00 intern_driver > 0.00 62.28 0.00 1146143 0.00 0.00 Fintern > 0.00 62.28 0.00 22460 0.00 0.00 > Flread__substitute_object_in_subtree > 0.00 62.28 0.00 22460 0.00 0.00 substitute_object_recurse > 0.00 62.28 0.00 13219 0.00 0.00 Fobarray_make > 0.00 62.28 0.00 13219 0.00 0.00 allocate_obarray > 0.00 62.28 0.00 13219 0.00 0.00 make_obarray > 0.00 62.28 0.00 10918 0.00 0.00 Fobarrayp > 0.00 62.28 0.00 5031 0.00 0.00 Flocate_file_internal > 0.00 62.28 0.00 2522 0.00 0.00 intern_1 > 0.00 62.28 0.00 1050 0.00 0.00 Fmapatoms > > The total reported cpu time for > a8b65860a5e28ee0867e8506a17d74d4a9b7783a is 3479.51s, and with the > patch it is 3460.69. That's just 0.5% of speedup, which doesn't pass my threshold for worthy changes, especially when the code changes are non-trivial (as they are in this case). So my vote is against installing this, sorry. However, I'm open to other opinions.
X-Loop: help-debbugs@HIDDEN Subject: bug#79035: Remove micro-optimization for Funintern for performance Resent-From: Lynn Winebarger <owinebar@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Thu, 17 Jul 2025 05:25:01 +0000 Resent-Message-ID: <handler.79035.B79035.175272986527440 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 79035 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii <eliz@HIDDEN> Cc: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, 79035 <at> debbugs.gnu.org Received: via spool by 79035-submit <at> debbugs.gnu.org id=B79035.175272986527440 (code B ref 79035); Thu, 17 Jul 2025 05:25:01 +0000 Received: (at 79035) by debbugs.gnu.org; 17 Jul 2025 05:24:25 +0000 Received: from localhost ([127.0.0.1]:52410 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ucH6X-00078W-5o for submit <at> debbugs.gnu.org; Thu, 17 Jul 2025 01:24:25 -0400 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]:40523) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from <owinebar@HIDDEN>) id 1ucH6T-000785-Rs for 79035 <at> debbugs.gnu.org; Thu, 17 Jul 2025 01:24:23 -0400 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-3a52878d37aso57295f8f.2 for <79035 <at> debbugs.gnu.org>; Wed, 16 Jul 2025 22:24:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1752729856; x=1753334656; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=k24qH17MsJPzz55k45IP30PtMoTHjv0D03TQ8jHDbUM=; b=FmRojJptfK07apUPoNGcq6hzBZYaAM+r393i6WO43qRGddocZ/cCO8zAhbNZ43PrKT zbiBhf5dwvlr7yEi1FPFdMn6Ovel9UvCyOZxTPkq4cjBdspPq1arDkXFvWQe4QE6+Nhi eeHRNeUUGHZdRnhPK3HS3BZAw+E/xeNPjwfL6pXmat/kdE0D8SN9gSyj23pBDc8oMC5j TyoyklfHx3n4WJ8xTEdVjiC4HDl+/7e4UhGVwww8beJmijRnh3LT5R8ttjTWf9yanw86 RJAyrQWpDL5V8iYkparQ8KatRaIumoCl4oDp2REyUAUN5SF6Z9Z0Uw8POxOHZHsCjZzC +Bgg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752729856; x=1753334656; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=k24qH17MsJPzz55k45IP30PtMoTHjv0D03TQ8jHDbUM=; b=aOuDjcWfWd2iDoUKFKafLkRlUxntvQkITGw5cu6uYNiXujgwaBpYYO18ieSX4t3Xae Df6U2gPDHM4ZUUlN7m63laPadFraH2eT+pC7VBxkGAnUOL7mpkGZbKPoeIzR3b7BPk6E 0T3w0X7+e5BRhNSuFMYdpRrIyoVbA7JkYRR3A06D6X1vqhmDK4VE5shD3Sz76dyAgthb lXJufsL5twv+hQlbiJvAPLIVHV53NKqAchFmUMdf+2tZYqKYQIibz3VvZDZPGv5dpN4a UHRusatERGO84FZLYbjaR8bN5JQERI2AXjeikVJUs9AY84+3GS85RzhodfX0iQSLTE/p SGcw== X-Gm-Message-State: AOJu0Ywz+5448Dk0lAqqafR93+cYCQqBcJZzl+LJFBmZibBdvowh17zs gdnaQvdGiBCuEBUGpXRutiVK7tRzorXVOX+n8ojLq0wkf0AGd5/9gT9NtW4LKoeuiOSqdVCzI6+ 0yk8vklRiOgd+CLr/IjNJ1ehq+aWqlao= X-Gm-Gg: ASbGncvBUuVYYvgSRcbQds43rE5qDfeqHewMwc7BflD7CeTqY70KaMAfaYKIiYvtoK9 KlIvinitJSUTsdh+TwwwTfCRtiULoGuzxhlEE8suKpeUNp7gjkIP7jwfA6uHAXuIZ8z2xLtQEgE sXM2lu6PacV8J6oDdD8Et5iluAWb3h50buIjrlkOX0HnyEj785AEx5FMyjmsHn+aIJ75b4l4cd1 hIaasHae9FU4/q4e2KflfQUSM15RbUH0CuViyBOZ1bXAprToQ== X-Google-Smtp-Source: AGHT+IGuqk1fNqgZp7sxu+tgbkxoLubIHtMyL07Md006JQRcB1J+vCM5bU7z8+vhdXSjXAXVdMBcUiq8PxMLl/sbvOw= X-Received: by 2002:a05:6000:40dc:b0:3a5:3369:52f3 with SMTP id ffacd0b85a97d-3b60dd4a834mr1775756f8f.3.1752729855578; Wed, 16 Jul 2025 22:24:15 -0700 (PDT) MIME-Version: 1.0 References: <CAM=F=bC=OLQh4BQvUzCh2BrCv6qVtSip8U1SSR5iJwvUEKWknQ@HIDDEN> <865xfrif0w.fsf@HIDDEN> In-Reply-To: <865xfrif0w.fsf@HIDDEN> From: Lynn Winebarger <owinebar@HIDDEN> Date: Thu, 17 Jul 2025 01:24:03 -0400 X-Gm-Features: Ac12FXxgeIAGqJgcEGWMn2x3tqYKaKsr1_tAsDxiFxKLuOzL28Mswy1NhjMy8l8 Message-ID: <CAM=F=bA6Ls=Sry3oahGcdvPNBh98wUmSKGe2e0GnyGsPjbLLxQ@HIDDEN> Content-Type: multipart/alternative; boundary="0000000000006dd6f0063a1938be" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) --0000000000006dd6f0063a1938be Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jul 17, 2025, 1:04=E2=80=AFAM Eli Zaretskii <eliz@HIDDEN> wrote: > > From: Lynn Winebarger <owinebar@HIDDEN> > > Date: Wed, 16 Jul 2025 23:25:15 -0400 > > > > Based on my measurement of my reentrant reader submission, I tried > > just eliminating the static variable used to "optimize" out a > > redundant lookup by stashing the index in a static variable used only > > by Funintern. See attached - I just repeated the lookup code in > > Funintern, removed the assignment from oblookup, and eliminated the > > static variable. At least for -O0, storing this information in the > > frequently called oblookup to save a lookup in the very infrequently > > called Funintern is a bit of a pessimization. Based on summing the > > profiles of all the byte-compile jobs, and filtering for > > obarray-related functions in read.c, I get the following for commit > > a8b65860a5e28ee0867e8506a17d74d4a9b7783a (the cumulative is all > > functions in lread.c, most of which I am eliding): > > Each sample counts as 0.01 seconds. > > % cumulative self self total > > time seconds seconds calls s/call s/call name > > 13.44 31.82 8.68 79508607 0.00 0.00 oblookup > > 0.85 58.97 0.55 260 2.12 2.21 grow_obarray > > 0.84 59.51 0.54 83352123 0.00 0.00 obarray_index > > 0.81 60.03 0.52 78691233 0.00 0.00 > > oblookup_considering_shorthand > > 0.37 62.19 0.24 6858863 0.00 0.00 intern_sym > > 0.29 63.03 0.19 4635384 0.00 0.00 read_internal_sta= rt > > 0.08 64.05 0.05 20570557 0.00 0.00 mapatoms_1 > > 0.06 64.23 0.04 1060 0.04 0.04 map_obarray > > 0.05 64.30 0.03 6858863 0.00 0.00 intern_driver > > 0.05 64.33 0.03 1143939 0.00 0.00 Fintern > > 0.03 64.48 0.02 Funintern > > 0.02 64.57 0.01 66751 0.00 0.00 Fintern_soft > > 0.00 64.59 0.00 22626 0.00 0.00 > > Flread__substitute_object_in_subtree > > 0.00 64.59 0.00 22626 0.00 0.00 > substitute_object_recurse > > 0.00 64.59 0.00 13223 0.00 0.00 Fobarray_make > > 0.00 64.59 0.00 13223 0.00 0.00 allocate_obarray > > 0.00 64.59 0.00 13223 0.00 0.00 make_obarray > > 0.00 64.59 0.00 10916 0.00 0.00 Fobarrayp > > 0.00 64.59 0.00 5032 0.00 0.00 > Flocate_file_internal > > 0.00 64.59 0.00 2522 0.00 0.00 intern_1 > > 0.00 64.59 0.00 1043 0.00 0.00 Fmapatoms > > > > The same commit with the attached patch: > > 13.22 31.13 8.23 79563723 0.00 0.00 oblookup > > 0.67 57.22 0.42 264 1.59 1.66 grow_obarray > > 0.61 57.60 0.38 83407339 0.00 0.00 obarray_index > > 0.61 57.98 0.38 78745509 0.00 0.00 > > oblookup_considering_shorthand > > 0.25 60.64 0.16 6858324 0.00 0.00 intern_sym > > 0.19 61.32 0.12 4635494 0.00 0.00 read_internal_sta= rt > > 0.11 61.59 0.07 20669351 0.00 0.00 mapatoms_1 > > 0.11 61.66 0.07 1067 0.07 0.07 map_obarray > > 0.10 61.84 0.06 Funintern > > 0.05 62.10 0.03 66913 0.00 0.00 Fintern_soft > > 0.01 62.27 0.01 6858324 0.00 0.00 intern_driver > > 0.00 62.28 0.00 1146143 0.00 0.00 Fintern > > 0.00 62.28 0.00 22460 0.00 0.00 > > Flread__substitute_object_in_subtree > > 0.00 62.28 0.00 22460 0.00 0.00 > substitute_object_recurse > > 0.00 62.28 0.00 13219 0.00 0.00 Fobarray_make > > 0.00 62.28 0.00 13219 0.00 0.00 allocate_obarray > > 0.00 62.28 0.00 13219 0.00 0.00 make_obarray > > 0.00 62.28 0.00 10918 0.00 0.00 Fobarrayp > > 0.00 62.28 0.00 5031 0.00 0.00 > Flocate_file_internal > > 0.00 62.28 0.00 2522 0.00 0.00 intern_1 > > 0.00 62.28 0.00 1050 0.00 0.00 Fmapatoms > > > > The total reported cpu time for > > a8b65860a5e28ee0867e8506a17d74d4a9b7783a is 3479.51s, and with the > > patch it is 3460.69. > > That's just 0.5% of speedup, which doesn't pass my threshold for > worthy changes, especially when the code changes are non-trivial (as > they are in this case). So my vote is against installing this, sorry. > The performance improvement is the punchline. The purpose of the change is to remove a static variable. That's why I originally included it in the patch to make the code in lread.c re-entrant. But it probably makes more sense as a stand-alone change. Lynn --0000000000006dd6f0063a1938be Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: base64 PGRpdiBkaXI9ImF1dG8iPjxkaXY+PGRpdiBjbGFzcz0iZ21haWxfcXVvdGUgZ21haWxfcXVvdGVf Y29udGFpbmVyIj48ZGl2IGRpcj0ibHRyIiBjbGFzcz0iZ21haWxfYXR0ciI+T24gVGh1LCBKdWwg MTcsIDIwMjUsIDE6MDTigK9BTSBFbGkgWmFyZXRza2lpICZsdDs8YSBocmVmPSJtYWlsdG86ZWxp ekBnbnUub3JnIj5lbGl6QGdudS5vcmc8L2E+Jmd0OyB3cm90ZTo8YnI+PC9kaXY+PGJsb2NrcXVv dGUgY2xhc3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOjBweCAwcHggMHB4IDAuOGV4O2Jv cmRlci1sZWZ0OjFweCBzb2xpZCByZ2IoMjA0LDIwNCwyMDQpO3BhZGRpbmctbGVmdDoxZXgiPiZn dDsgRnJvbTogTHlubiBXaW5lYmFyZ2VyICZsdDs8YSBocmVmPSJtYWlsdG86b3dpbmViYXJAZ21h aWwuY29tIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub3JlZmVycmVyIj5vd2luZWJhckBnbWFpbC5j b208L2E+Jmd0Ozxicj4NCiZndDsgRGF0ZTogV2VkLCAxNiBKdWwgMjAyNSAyMzoyNToxNSAtMDQw MDxicj4NCiZndDsgPGJyPg0KJmd0OyBCYXNlZCBvbiBteSBtZWFzdXJlbWVudCBvZiBteSByZWVu dHJhbnQgcmVhZGVyIHN1Ym1pc3Npb24sIEkgdHJpZWQ8YnI+DQomZ3Q7IGp1c3QgZWxpbWluYXRp bmcgdGhlIHN0YXRpYyB2YXJpYWJsZSB1c2VkIHRvICZxdW90O29wdGltaXplJnF1b3Q7IG91dCBh PGJyPg0KJmd0OyByZWR1bmRhbnQgbG9va3VwIGJ5IHN0YXNoaW5nIHRoZSBpbmRleCBpbiBhIHN0 YXRpYyB2YXJpYWJsZSB1c2VkIG9ubHk8YnI+DQomZ3Q7IGJ5IEZ1bmludGVybi7CoCBTZWUgYXR0 YWNoZWQgLSBJIGp1c3QgcmVwZWF0ZWQgdGhlIGxvb2t1cCBjb2RlIGluPGJyPg0KJmd0OyBGdW5p bnRlcm4sIHJlbW92ZWQgdGhlIGFzc2lnbm1lbnQgZnJvbSBvYmxvb2t1cCwgYW5kIGVsaW1pbmF0 ZWQgdGhlPGJyPg0KJmd0OyBzdGF0aWMgdmFyaWFibGUuwqAgQXQgbGVhc3QgZm9yIC1PMCwgc3Rv cmluZyB0aGlzIGluZm9ybWF0aW9uIGluIHRoZTxicj4NCiZndDsgZnJlcXVlbnRseSBjYWxsZWQg b2Jsb29rdXAgdG8gc2F2ZSBhIGxvb2t1cCBpbiB0aGUgdmVyeSBpbmZyZXF1ZW50bHk8YnI+DQom Z3Q7IGNhbGxlZCBGdW5pbnRlcm4gaXMgYSBiaXQgb2YgYSBwZXNzaW1pemF0aW9uLsKgIEJhc2Vk IG9uIHN1bW1pbmcgdGhlPGJyPg0KJmd0OyBwcm9maWxlcyBvZiBhbGwgdGhlIGJ5dGUtY29tcGls ZSBqb2JzLCBhbmQgZmlsdGVyaW5nIGZvcjxicj4NCiZndDsgb2JhcnJheS1yZWxhdGVkIGZ1bmN0 aW9ucyBpbiByZWFkLmMsIEkgZ2V0IHRoZSBmb2xsb3dpbmcgZm9yIGNvbW1pdDxicj4NCiZndDsg YThiNjU4NjBhNWUyOGVlMDg2N2U4NTA2YTE3ZDc0ZDRhOWI3NzgzYSAodGhlIGN1bXVsYXRpdmUg aXMgYWxsPGJyPg0KJmd0OyBmdW5jdGlvbnMgaW4gbHJlYWQuYywgbW9zdCBvZiB3aGljaCBJIGFt IGVsaWRpbmcpOjxicj4NCiZndDsgRWFjaCBzYW1wbGUgY291bnRzIGFzIDAuMDEgc2Vjb25kcy48 YnI+DQomZ3Q7wqAgwqAlwqAgwqBjdW11bGF0aXZlwqAgwqBzZWxmwqAgwqAgwqAgwqAgwqAgwqAg wqAgc2VsZsKgIMKgIMKgdG90YWw8YnI+DQomZ3Q7wqAgdGltZcKgIMKgc2Vjb25kc8KgIMKgc2Vj b25kc8KgIMKgIGNhbGxzwqAgwqBzL2NhbGzCoCDCoHMvY2FsbMKgIG5hbWU8YnI+DQomZ3Q7wqAg MTMuNDTCoCDCoCDCoDMxLjgywqAgwqAgwqA4LjY4IDc5NTA4NjA3wqAgwqAgwqAwLjAwwqAgwqAg wqAwLjAwwqAgb2Jsb29rdXA8YnI+DQomZ3Q7wqAgwqAwLjg1wqAgwqAgwqA1OC45N8KgIMKgIMKg MC41NcKgIMKgIMKgIDI2MMKgIMKgIMKgMi4xMsKgIMKgIMKgMi4yMcKgIGdyb3dfb2JhcnJheTxi cj4NCiZndDvCoCDCoDAuODTCoCDCoCDCoDU5LjUxwqAgwqAgwqAwLjU0IDgzMzUyMTIzwqAgwqAg wqAwLjAwwqAgwqAgwqAwLjAwwqAgb2JhcnJheV9pbmRleDxicj4NCiZndDvCoCDCoDAuODHCoCDC oCDCoDYwLjAzwqAgwqAgwqAwLjUyIDc4NjkxMjMzwqAgwqAgwqAwLjAwwqAgwqAgwqAwLjAwPGJy Pg0KJmd0OyBvYmxvb2t1cF9jb25zaWRlcmluZ19zaG9ydGhhbmQ8YnI+DQomZ3Q7wqAgwqAwLjM3 wqAgwqAgwqA2Mi4xOcKgIMKgIMKgMC4yNMKgIDY4NTg4NjPCoCDCoCDCoDAuMDDCoCDCoCDCoDAu MDDCoCBpbnRlcm5fc3ltPGJyPg0KJmd0O8KgIMKgMC4yOcKgIMKgIMKgNjMuMDPCoCDCoCDCoDAu MTnCoCA0NjM1Mzg0wqAgwqAgwqAwLjAwwqAgwqAgwqAwLjAwwqAgcmVhZF9pbnRlcm5hbF9zdGFy dDxicj4NCiZndDvCoCDCoDAuMDjCoCDCoCDCoDY0LjA1wqAgwqAgwqAwLjA1IDIwNTcwNTU3wqAg wqAgwqAwLjAwwqAgwqAgwqAwLjAwwqAgbWFwYXRvbXNfMTxicj4NCiZndDvCoCDCoDAuMDbCoCDC oCDCoDY0LjIzwqAgwqAgwqAwLjA0wqAgwqAgwqAxMDYwwqAgwqAgwqAwLjA0wqAgwqAgwqAwLjA0 wqAgbWFwX29iYXJyYXk8YnI+DQomZ3Q7wqAgwqAwLjA1wqAgwqAgwqA2NC4zMMKgIMKgIMKgMC4w M8KgIDY4NTg4NjPCoCDCoCDCoDAuMDDCoCDCoCDCoDAuMDDCoCBpbnRlcm5fZHJpdmVyPGJyPg0K Jmd0O8KgIMKgMC4wNcKgIMKgIMKgNjQuMzPCoCDCoCDCoDAuMDPCoCAxMTQzOTM5wqAgwqAgwqAw LjAwwqAgwqAgwqAwLjAwwqAgRmludGVybjxicj4NCiZndDvCoCDCoDAuMDPCoCDCoCDCoDY0LjQ4 wqAgwqAgwqAwLjAywqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBG dW5pbnRlcm48YnI+DQomZ3Q7wqAgwqAwLjAywqAgwqAgwqA2NC41N8KgIMKgIMKgMC4wMcKgIMKg IDY2NzUxwqAgwqAgwqAwLjAwwqAgwqAgwqAwLjAwwqAgRmludGVybl9zb2Z0PGJyPg0KJmd0O8Kg IMKgMC4wMMKgIMKgIMKgNjQuNTnCoCDCoCDCoDAuMDDCoCDCoCAyMjYyNsKgIMKgIMKgMC4wMMKg IMKgIMKgMC4wMDxicj4NCiZndDsgRmxyZWFkX19zdWJzdGl0dXRlX29iamVjdF9pbl9zdWJ0cmVl PGJyPg0KJmd0O8KgIMKgMC4wMMKgIMKgIMKgNjQuNTnCoCDCoCDCoDAuMDDCoCDCoCAyMjYyNsKg IMKgIMKgMC4wMMKgIMKgIMKgMC4wMMKgIHN1YnN0aXR1dGVfb2JqZWN0X3JlY3Vyc2U8YnI+DQom Z3Q7wqAgwqAwLjAwwqAgwqAgwqA2NC41OcKgIMKgIMKgMC4wMMKgIMKgIDEzMjIzwqAgwqAgwqAw LjAwwqAgwqAgwqAwLjAwwqAgRm9iYXJyYXlfbWFrZTxicj4NCiZndDvCoCDCoDAuMDDCoCDCoCDC oDY0LjU5wqAgwqAgwqAwLjAwwqAgwqAgMTMyMjPCoCDCoCDCoDAuMDDCoCDCoCDCoDAuMDDCoCBh bGxvY2F0ZV9vYmFycmF5PGJyPg0KJmd0O8KgIMKgMC4wMMKgIMKgIMKgNjQuNTnCoCDCoCDCoDAu MDDCoCDCoCAxMzIyM8KgIMKgIMKgMC4wMMKgIMKgIMKgMC4wMMKgIG1ha2Vfb2JhcnJheTxicj4N CiZndDvCoCDCoDAuMDDCoCDCoCDCoDY0LjU5wqAgwqAgwqAwLjAwwqAgwqAgMTA5MTbCoCDCoCDC oDAuMDDCoCDCoCDCoDAuMDDCoCBGb2JhcnJheXA8YnI+DQomZ3Q7wqAgwqAwLjAwwqAgwqAgwqA2 NC41OcKgIMKgIMKgMC4wMMKgIMKgIMKgNTAzMsKgIMKgIMKgMC4wMMKgIMKgIMKgMC4wMMKgIEZs b2NhdGVfZmlsZV9pbnRlcm5hbDxicj4NCiZndDvCoCDCoDAuMDDCoCDCoCDCoDY0LjU5wqAgwqAg wqAwLjAwwqAgwqAgwqAyNTIywqAgwqAgwqAwLjAwwqAgwqAgwqAwLjAwwqAgaW50ZXJuXzE8YnI+ DQomZ3Q7wqAgwqAwLjAwwqAgwqAgwqA2NC41OcKgIMKgIMKgMC4wMMKgIMKgIMKgMTA0M8KgIMKg IMKgMC4wMMKgIMKgIMKgMC4wMMKgIEZtYXBhdG9tczxicj4NCiZndDsgPGJyPg0KJmd0OyBUaGUg c2FtZSBjb21taXQgd2l0aCB0aGUgYXR0YWNoZWQgcGF0Y2g6PGJyPg0KJmd0O8KgIDEzLjIywqAg wqAgwqAzMS4xM8KgIMKgIMKgOC4yMyA3OTU2MzcyM8KgIMKgIMKgMC4wMMKgIMKgIMKgMC4wMMKg IG9ibG9va3VwPGJyPg0KJmd0O8KgIMKgMC42N8KgIMKgIMKgNTcuMjLCoCDCoCDCoDAuNDLCoCDC oCDCoCAyNjTCoCDCoCDCoDEuNTnCoCDCoCDCoDEuNjbCoCBncm93X29iYXJyYXk8YnI+DQomZ3Q7 wqAgwqAwLjYxwqAgwqAgwqA1Ny42MMKgIMKgIMKgMC4zOCA4MzQwNzMzOcKgIMKgIMKgMC4wMMKg IMKgIMKgMC4wMMKgIG9iYXJyYXlfaW5kZXg8YnI+DQomZ3Q7wqAgwqAwLjYxwqAgwqAgwqA1Ny45 OMKgIMKgIMKgMC4zOCA3ODc0NTUwOcKgIMKgIMKgMC4wMMKgIMKgIMKgMC4wMDxicj4NCiZndDsg b2Jsb29rdXBfY29uc2lkZXJpbmdfc2hvcnRoYW5kPGJyPg0KJmd0O8KgIMKgMC4yNcKgIMKgIMKg NjAuNjTCoCDCoCDCoDAuMTbCoCA2ODU4MzI0wqAgwqAgwqAwLjAwwqAgwqAgwqAwLjAwwqAgaW50 ZXJuX3N5bTxicj4NCiZndDvCoCDCoDAuMTnCoCDCoCDCoDYxLjMywqAgwqAgwqAwLjEywqAgNDYz NTQ5NMKgIMKgIMKgMC4wMMKgIMKgIMKgMC4wMMKgIHJlYWRfaW50ZXJuYWxfc3RhcnQ8YnI+DQom Z3Q7wqAgwqAwLjExwqAgwqAgwqA2MS41OcKgIMKgIMKgMC4wNyAyMDY2OTM1McKgIMKgIMKgMC4w MMKgIMKgIMKgMC4wMMKgIG1hcGF0b21zXzE8YnI+DQomZ3Q7wqAgwqAwLjExwqAgwqAgwqA2MS42 NsKgIMKgIMKgMC4wN8KgIMKgIMKgMTA2N8KgIMKgIMKgMC4wN8KgIMKgIMKgMC4wN8KgIG1hcF9v YmFycmF5PGJyPg0KJmd0O8KgIMKgMC4xMMKgIMKgIMKgNjEuODTCoCDCoCDCoDAuMDbCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEZ1bmludGVybjxicj4NCiZndDvC oCDCoDAuMDXCoCDCoCDCoDYyLjEwwqAgwqAgwqAwLjAzwqAgwqAgNjY5MTPCoCDCoCDCoDAuMDDC oCDCoCDCoDAuMDDCoCBGaW50ZXJuX3NvZnQ8YnI+DQomZ3Q7wqAgwqAwLjAxwqAgwqAgwqA2Mi4y N8KgIMKgIMKgMC4wMcKgIDY4NTgzMjTCoCDCoCDCoDAuMDDCoCDCoCDCoDAuMDDCoCBpbnRlcm5f ZHJpdmVyPGJyPg0KJmd0O8KgIMKgMC4wMMKgIMKgIMKgNjIuMjjCoCDCoCDCoDAuMDDCoCAxMTQ2 MTQzwqAgwqAgwqAwLjAwwqAgwqAgwqAwLjAwwqAgRmludGVybjxicj4NCiZndDvCoCDCoDAuMDDC oCDCoCDCoDYyLjI4wqAgwqAgwqAwLjAwwqAgwqAgMjI0NjDCoCDCoCDCoDAuMDDCoCDCoCDCoDAu MDA8YnI+DQomZ3Q7IEZscmVhZF9fc3Vic3RpdHV0ZV9vYmplY3RfaW5fc3VidHJlZTxicj4NCiZn dDvCoCDCoDAuMDDCoCDCoCDCoDYyLjI4wqAgwqAgwqAwLjAwwqAgwqAgMjI0NjDCoCDCoCDCoDAu MDDCoCDCoCDCoDAuMDDCoCBzdWJzdGl0dXRlX29iamVjdF9yZWN1cnNlPGJyPg0KJmd0O8KgIMKg MC4wMMKgIMKgIMKgNjIuMjjCoCDCoCDCoDAuMDDCoCDCoCAxMzIxOcKgIMKgIMKgMC4wMMKgIMKg IMKgMC4wMMKgIEZvYmFycmF5X21ha2U8YnI+DQomZ3Q7wqAgwqAwLjAwwqAgwqAgwqA2Mi4yOMKg IMKgIMKgMC4wMMKgIMKgIDEzMjE5wqAgwqAgwqAwLjAwwqAgwqAgwqAwLjAwwqAgYWxsb2NhdGVf b2JhcnJheTxicj4NCiZndDvCoCDCoDAuMDDCoCDCoCDCoDYyLjI4wqAgwqAgwqAwLjAwwqAgwqAg MTMyMTnCoCDCoCDCoDAuMDDCoCDCoCDCoDAuMDDCoCBtYWtlX29iYXJyYXk8YnI+DQomZ3Q7wqAg wqAwLjAwwqAgwqAgwqA2Mi4yOMKgIMKgIMKgMC4wMMKgIMKgIDEwOTE4wqAgwqAgwqAwLjAwwqAg wqAgwqAwLjAwwqAgRm9iYXJyYXlwPGJyPg0KJmd0O8KgIMKgMC4wMMKgIMKgIMKgNjIuMjjCoCDC oCDCoDAuMDDCoCDCoCDCoDUwMzHCoCDCoCDCoDAuMDDCoCDCoCDCoDAuMDDCoCBGbG9jYXRlX2Zp bGVfaW50ZXJuYWw8YnI+DQomZ3Q7wqAgwqAwLjAwwqAgwqAgwqA2Mi4yOMKgIMKgIMKgMC4wMMKg IMKgIMKgMjUyMsKgIMKgIMKgMC4wMMKgIMKgIMKgMC4wMMKgIGludGVybl8xPGJyPg0KJmd0O8Kg IMKgMC4wMMKgIMKgIMKgNjIuMjjCoCDCoCDCoDAuMDDCoCDCoCDCoDEwNTDCoCDCoCDCoDAuMDDC oCDCoCDCoDAuMDDCoCBGbWFwYXRvbXM8YnI+DQomZ3Q7IDxicj4NCiZndDsgVGhlIHRvdGFsIHJl cG9ydGVkIGNwdSB0aW1lIGZvcjxicj4NCiZndDsgYThiNjU4NjBhNWUyOGVlMDg2N2U4NTA2YTE3 ZDc0ZDRhOWI3NzgzYSBpcyAzNDc5LjUxcywgYW5kIHdpdGggdGhlPGJyPg0KJmd0OyBwYXRjaCBp dCBpcyAzNDYwLjY5Ljxicj4NCjxicj4NClRoYXQmIzM5O3MganVzdCAwLjUlIG9mIHNwZWVkdXAs IHdoaWNoIGRvZXNuJiMzOTt0IHBhc3MgbXkgdGhyZXNob2xkIGZvcjxicj4NCndvcnRoeSBjaGFu Z2VzLCBlc3BlY2lhbGx5IHdoZW4gdGhlIGNvZGUgY2hhbmdlcyBhcmUgbm9uLXRyaXZpYWwgKGFz PGJyPg0KdGhleSBhcmUgaW4gdGhpcyBjYXNlKS7CoCBTbyBteSB2b3RlIGlzIGFnYWluc3QgaW5z dGFsbGluZyB0aGlzLCBzb3JyeS48YnI+PC9ibG9ja3F1b3RlPjwvZGl2PjwvZGl2PjxkaXYgZGly PSJhdXRvIj48YnI+PC9kaXY+PGRpdiBkaXI9ImF1dG8iPlRoZSBwZXJmb3JtYW5jZSBpbXByb3Zl bWVudCBpcyB0aGUgcHVuY2hsaW5lLsKgIFRoZSBwdXJwb3NlIG9mIHRoZSBjaGFuZ2UgaXMgdG8g cmVtb3ZlIGEgc3RhdGljIHZhcmlhYmxlLsKgIFRoYXQmIzM5O3Mgd2h5IEkgb3JpZ2luYWxseSBp bmNsdWRlZCBpdCBpbiB0aGUgcGF0Y2ggdG8gbWFrZSB0aGUgY29kZSBpbiBscmVhZC5jIHJlLWVu dHJhbnQuwqAgQnV0IGl0wqAgcHJvYmFibHkgbWFrZXMgbW9yZSBzZW5zZSBhcyBhIHN0YW5kLWFs b25lIGNoYW5nZS48L2Rpdj48ZGl2IGRpcj0iYXV0byI+PGJyPjwvZGl2PjxkaXYgZGlyPSJhdXRv Ij5MeW5uPC9kaXY+PGRpdiBkaXI9ImF1dG8iPjxicj48L2Rpdj48L2Rpdj4NCg== --0000000000006dd6f0063a1938be--
X-Loop: help-debbugs@HIDDEN Subject: bug#79035: Remove micro-optimization for Funintern for performance Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Thu, 17 Jul 2025 06:45:01 +0000 Resent-Message-ID: <handler.79035.B79035.175273467614348 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 79035 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Lynn Winebarger <owinebar@HIDDEN> Cc: mattias.engdegard@HIDDEN, monnier@HIDDEN, 79035 <at> debbugs.gnu.org Received: via spool by 79035-submit <at> debbugs.gnu.org id=B79035.175273467614348 (code B ref 79035); Thu, 17 Jul 2025 06:45:01 +0000 Received: (at 79035) by debbugs.gnu.org; 17 Jul 2025 06:44:36 +0000 Received: from localhost ([127.0.0.1]:52693 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ucIM7-0003jL-Ko for submit <at> debbugs.gnu.org; Thu, 17 Jul 2025 02:44:35 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50490) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1ucIM4-0003iz-RX for 79035 <at> debbugs.gnu.org; Thu, 17 Jul 2025 02:44:33 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1ucILz-0001qf-5S; Thu, 17 Jul 2025 02:44:27 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=j3U+H1qf8FEg84+3vWP/TXg7aSHyzzxg1x9a+QzJmjE=; b=LGA+sEYqO0YxF5oSsKY/ /wfj9XFvWfZwESixMi2kCiVADu22fx6kbrmKpvlaF1YJmKKCNB6R334kFdwVmN3L68RbIPIkFz0XD kiyixn44Kht/HN1LhvachQzS+WvIrg6Bww/FOm0pZEov3KrmroCmaA1fYupgVjcqEcjrtBNR55e3c 0s5/4iPRNBcBAQC3MydBXRE/ypmB/DmRBSAXEf8vtkVHhi/QxMt6QFnvDnu8AXbfmZgxHmrqald51 gjrje7YaMKD2v8Yed7vnnHdS3ZQCitS4sdylxPfgI7SmRTUq/ebpDKvs2VYsiBpL7kpOztnKIkMNx kUcdxp+A+LEGGw==; Date: Thu, 17 Jul 2025 09:44:22 +0300 Message-Id: <86seivgvuh.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-Reply-To: <CAM=F=bA6Ls=Sry3oahGcdvPNBh98wUmSKGe2e0GnyGsPjbLLxQ@HIDDEN> (message from Lynn Winebarger on Thu, 17 Jul 2025 01:24:03 -0400) References: <CAM=F=bC=OLQh4BQvUzCh2BrCv6qVtSip8U1SSR5iJwvUEKWknQ@HIDDEN> <865xfrif0w.fsf@HIDDEN> <CAM=F=bA6Ls=Sry3oahGcdvPNBh98wUmSKGe2e0GnyGsPjbLLxQ@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: Lynn Winebarger <owinebar@HIDDEN> > Date: Thu, 17 Jul 2025 01:24:03 -0400 > Cc: 79035 <at> debbugs.gnu.org, Mattias EngdegÄrd <mattias.engdegard@HIDDEN>, > Stefan Monnier <monnier@HIDDEN> > > > The total reported cpu time for > > a8b65860a5e28ee0867e8506a17d74d4a9b7783a is 3479.51s, and with the > > patch it is 3460.69. > > That's just 0.5% of speedup, which doesn't pass my threshold for > worthy changes, especially when the code changes are non-trivial (as > they are in this case). So my vote is against installing this, sorry. > > The performance improvement is the punchline. The purpose of the change is to remove a static variable. > That's why I originally included it in the patch to make the code in lread.c re-entrant. But it probably makes > more sense as a stand-alone change. If this change is related to some other changeset, let alone is needed by it, it is not standalone, and should be part of that other changeset. It would make sense to have it as standalone if it brought us some significant advantages, which doesn't seem to be the case here.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.