GNU logs - #79035, boring messages


Message sent to bug-gnu-emacs@HIDDEN:


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--




Message sent:


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


Message sent to bug-gnu-emacs@HIDDEN:


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.




Message sent to bug-gnu-emacs@HIDDEN:


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--




Message sent to bug-gnu-emacs@HIDDEN:


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.





Last modified: Thu, 17 Jul 2025 06:45:01 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.