[ruby-core:112684] [Ruby master Bug#19438] Ruby 2.7 -> 3.2 Performance Regression in so_k_nucleotide benchmark
From:
"nickborromeo (Nick Borromeo) via ruby-core" <ruby-core@...>
Date:
2023-03-04 00:40:17 UTC
List:
ruby-core #112684
SXNzdWUgIzE5NDM4IGhhcyBiZWVuIHVwZGF0ZWQgYnkgbmlja2JvcnJvbWVvIChOaWNrIEJvcnJv bWVvKS4NDQoNDQoNDQpJIHRvb2sgYSBsb29rIGF0IHRoZSBiZW5jaG1hcmssIGFuZCBJIHdhcyB3 b25kZXJpbmcgd2hhdCBleGFjdGx5IGl0IHdhcyB0cnlpbmcgdG8gYmVuY2htYXJrLiBJdCBsb29r cyBsaWtlIGl0cyBiZW5jaG1hcmtpbmcgdGhlIGFiaWxpdHkgdG8gc3VtIHVwIHRoZSB3b3JkIGNv dW50IG9mIGEgZ2l2ZW4gc3Vic3RyaW5nLiBJZiB5b3UgYWdyZWUgdGhhdCB0aGF0IGlzIHdoYXQg aXMgYmVpbmcgYmVuY2htYXJrZWQsIG9uZSB0aGluZyB3ZSBjYW4gZG8gaXMgY2hhbmdlIHRoZSBi ZW5jaG1hcmsgdG8gdXNlIGB0YWxseWAgaW5zdGVhZCBvZiBtYW51YWxseSBpbmNyZW1lbnRpbmcg dGhlIGNvdW50LiBJIHJhbiB0aGUgYmVuY2htYXJrIHdpdGggdGhpcyBjaGFuZ2UgYW5kIGdvdCB0 aGUgZm9sbG93aW5nIHJlc3VsdC4NDQoNDQpgYGANDQrina8gYmVuY2htYXJrLWRyaXZlciBzb19r X251Y2xlb3RpZGUueW1sIC0tcmJlbnYgJzIuNy41OzMuMC41OzMuMS4yOzMuMi4xJyAtLXJlcGVh dC1jb3VudCA1DQ0KQ2FsY3VsYXRpbmcgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQ0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgMi43LjUgICAgICAgMy4wLjUgICAgICAg My4xLjIgICAgICAgMy4yLjENDQogICAgIHNvX2tfbnVjbGVvdGlkZSAgICAgIDEuNjcxICAgICAg IDEuNzI4ICAgICAgIDEuODkzICAgICAgIDIuMDQ1IGkvcyAtICAgICAgIDEuMDAwIHRpbWVzIGlu IDAuNTk4MjY5cyAwLjU3ODU0OXMgMC41MjgyNjFzIDAuNDg5MTA0cw0NCg0NCkNvbXBhcmlzb246 DQ0KICAgICAgICAgICAgICAgICAgc29fa19udWNsZW90aWRlDQ0KICAgICAgICAgICAgICAgMy4y LjE6ICAgICAgICAgMi4wIGkvcw0NCiAgICAgICAgICAgICAgIDMuMS4yOiAgICAgICAgIDEuOSBp L3MgLSAxLjA4eCAgc2xvd2VyDQ0KICAgICAgICAgICAgICAgMy4wLjU6ICAgICAgICAgMS43IGkv cyAtIDEuMTh4ICBzbG93ZXINDQogICAgICAgICAgICAgICAyLjcuNTogICAgICAgICAxLjcgaS9z IC0gMS4yMnggIHNsb3dlcg0NCg0NCmBgYA0NCg0NClRoZSBtZXRob2QgdG8gY291bnQgdGhlIGZy ZXF1ZW5jeSBsb29rcyBzb21ldGhpbmcgbGlrZSB0aGlzIA0NCg0NCmBgYA0NCiAgICAgIGRlZiB3 b3JkX3RhbGx5KHNlcSwgbGVuZ3RoKQ0NCiAgICAgICAgd29yZHMgPSBbXQ0NCiAgICAgICAgbiA9 ICBzZXEubGVuZ3RoIC0gbGVuZ3RoICsgMQ0NCiAgICAgICAgKDAgLi4uIGxlbmd0aCkuZWFjaCBk byB8ZnwNDQogICAgICAgICAgICAoZiAuLi4gbikuc3RlcChsZW5ndGgpIGRvIHxpfA0NCiAgICAg ICAgICAgICAgICB3b3JkcyA8PCBzZXFbaSxsZW5ndGhdDQ0KICAgICAgICAgICAgZW5kDQ0KICAg ICAgICBlbmQNDQogICAgICAgIHRhYmxlID0gd29yZHMudGFsbHkNDQoNDQogICAgICAgIFtuLHRh YmxlXQ0NCiAgICAgIGVuZA0NCmBgYA0NCg0NCkluIHNvbWUgb2YgdGhlIGl0ZXJhdGlvbnMgdGhh dCBJIHBsYXllZCBhcm91bmQgd2l0aCwgdGhlIHNsb3cgZG93biBzZWVtcyB0byBiZSBjb21pbmcg ZnJvbSB0aGUgaW5jcmVtZW50aW5nIG9mIHRoZSB2YWx1ZSBvZiBhIHBhcnRpY3VsYXIga2V5LiAN DQogKiB0YWtpbmcgdGhlIHN1YnN0cmluZw0NCiAqIGFjY2Vzc2luZyB0aGUgdmFsdWUgb2YgdGhh dCBrZXkgZnJvbSB0aGUgSGFzaA0NCg0NCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0NDQpCdWcgIzE5NDM4OiBSdWJ5IDIuNyAtPiAzLjIgUGVyZm9ybWFuY2UgUmVncmVz c2lvbiBpbiBzb19rX251Y2xlb3RpZGUgYmVuY2htYXJrDQ0KaHR0cHM6Ly9idWdzLnJ1YnktbGFu Zy5vcmcvaXNzdWVzLzE5NDM4I2NoYW5nZS0xMDIxMzkNDQoNDQoqIEF1dGhvcjogbmljay5zY2h3 YWRlcmVyIChOaWNob2xhcyBTY2h3YWRlcmVyKQ0NCiogU3RhdHVzOiBPcGVuDQ0KKiBQcmlvcml0 eTogTm9ybWFsDQ0KKiBydWJ5IC12OiAzLjIuMA0NCiogQmFja3BvcnQ6IDIuNzogVU5LTk9XTiwg My4wOiBVTktOT1dOLCAzLjE6IFVOS05PV04sIDMuMjogVU5LTk9XTg0NCi0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NDQojIyBJbnRyb2R1Y3Rpb24NDQoNDQpSZWNlbnRs eSBJIGhhZCBiZWVuIGdvaW5nIHRocm91Z2ggc29tZSBvZiB0aGUgb2xkIGJlbmNobWFya3MgaW4g dGhlIFtSdWJ5IEdyZWF0IEltcGxlbWVudGF0aW9uIFNob290b3V0XShodHRwczovL3Byb2dyYW1t aW5nemVuLmNvbS90aGUtZ3JlYXQtcnVieS1zaG9vdG91dC1qdWx5LTIwMTAvKSBmcm9tIGFyb3Vu ZCAyMDEwLiANDQoNDQpBcyBhbiBleHBlcmltZW50LCBvbmUgbmlnaHQgSSByYW4gdGhlIGJlbmNo bWFya3MgYWdhaW5zdCBSdWJ5IDMuMi4wLCBSdWJ5IDMuMi4wIC0teWppdCwgVHJ1ZmZsZVJ1Ynks IFRydWZmbGVSdWJ5ICtHcmFhbFZNLCBhbmQgUnVieSAyLjYuMTAuDQ0KDQ0KTW9zdCByZXN1bHRz IHdlcmUgYXMgZXhwZWN0ZWQuIEhvd2V2ZXIgdGhlcmUgd2FzIGEgYmVuY2htYXJrIHRoYXQgUnVi eSAyLjYuMTAgd2FzIF9jb25zaXN0ZW50bHlfIG91dHBlcmZvcm1pbmcgYWxsIG5ldyBSdWJpZXMg b24uDQ0KDQ0KIyMgTWV0aG9kDQ0KDQ0KQWZ0ZXIgcGFpcmluZyB3aXRoIEBlaWdodGJpdHJhcHRv ciwgd2UgZGlzY292ZXJlZCB0aGF0IHRoaXMgb2xkIGJlbmNobWFyayB3YXMgcmVtYXJrYWJseSBz aW1pbGFyIHRvIGFuIGV4aXN0aW5nIGJlbmNobWFyayBpbiB0aGUgYC9iZW5jaG1hcmtgIA0NCmRp cmVjdG9yeSwgW3NvX2tfbnVjbGVvdGlkZS55bWxdKGh0dHBzOi8vZ2l0aHViLmNvbS9ydWJ5L3J1 YnkvYmxvYi9tYXN0ZXIvYmVuY2htYXJrL3NvX2tfbnVjbGVvdGlkZS55bWwpLiBXZSBkZWNpZGVk IHRvIGdvIHdpdGggdGhhdCBiZW5jaG1hcmsuIEZvciBicmV2aXR5IEkgaGF2ZSBub3QgaW5jbHVk ZWQgdGhlIGZ1bGwgMTUwIGxpbmVzIG9mIHRoZSBiZW5jaG1hcmsgaGVyZS4NDQoNDQpJIHRlc3Rl ZCB0aGlzIGJlbmNobWFyayBvdXQgd2l0aCAxMDAgcnVucyB1c2luZyBgYmVuY2htYXJrLWRyaXZl cmAgYWdhaW5zdCBSdWJ5IDIuNywzLjAsMy4xLDMuMi4gKEkgaGFkIGRpc2NvdmVyZWQgdGhhdCAy Ljcgd2FzIGV2ZW4gZmFzdGVyIHRoYW4gMi42LikuDQ0KDQ0KSXQgYXBwZWFycyB0aGF0IGFib3V0 IGhhbGYgb2YgdGhlIHJlZ3Jlc3Npb24gb2NjdXJlZCBmcm9tIDIuNyAtPiAzLjA7IHRoZSBvdGhl ciBoYWxmIGZyb20gMy4wIC0+IDMuMi4gT25lIG90aGVyIGludGVyZXN0aW5nIGZpbmRpbmcgaXMg dGhhdCBlYWNoIG1pbm9yIHZlcnNpb24gZG9lcyBhcHBlYXIgdG8gcmVncmVzcyANDQpmcm9tIHRo ZSBsYXN0LCBldmVuIGlmIGEgbGl0dGxlLg0NCg0NCiMjIENvZGUNDQoNDQpUaGlzIGlzIG15IGJl bmNobWFyayBydW5uaW5nIGNvZGUgYW5kIGhhcm5hc3MuIFtUaGUgZnVsbCBjb2RlIGFuZCBkYXRh IGNhbiBiZSBmb3VuZCBoZXJlXShodHRwczovL2dpc3QuZ2l0aHViLmNvbS9TY2h3YWQvMTZlZGYz ZDdjYzUzMTZhZjRiYWYyMzQ5N2YzYzZhOGYpDQ0KDQ0KYGBgcnVieQ0NClJVTlMgPSAxMDANDQoN DQpyZXN1bHRzID0gSGFzaC5uZXcgeyB8aCwga3wgaFtrXSA9IFtdIH0NDQpSVU5TLnRpbWVzIGRv IHxpfA0NCiAgcHV0cyBpDQ0KICBydW4gPSBgYmVuY2htYXJrLWRyaXZlciBzb19rX251Y2xlb3Rp ZGUueW1sIC0tY2hydWJ5ICcyLjcuNTszLjAuNTszLjEuMzszLjIuMCcgLW8gc2ltcGxlYA0NCiAg cnVuLnNjYW4oL1xkXC5cZFwuXGQvKS5lYWNoX3dpdGhfaW5kZXggZG8gfHZlcnNpb24sIGluZGV4 fA0NCiAgICByZXN1bHRzW3ZlcnNpb25dIDw8IHJ1bi5zY2FuKC9cZFwuXGRcZFxkLylbaW5kZXhd DQ0KICBlbmQNDQplbmQNDQoNDQpyZXF1aXJlICdjc3YnDQ0KDQ0KY29sdW1ucyA9IHJlc3VsdHMu a2V5cw0NCm91dGRhdGEgPSBDU1YuZ2VuZXJhdGUgZG8gfGNzdnwNDQogIGNzdiA8PCBjb2x1bW5z DQ0KICBSVU5TLnRpbWVzIGRvIHxpfA0NCiAgICBjc3YgPDwgY29sdW1ucy5tYXAgeyB8Y3wgcmVz dWx0c1tjXVtpXSB9DQ0KICBlbmQNDQplbmQNDQoNDQpGaWxlLndyaXRlKCJvdXRwdXQuY3N2Iiwg b3V0ZGF0YSkNDQpgYGANDQojIyBEYXRhDQ0KDQ0KUnVieSAyLjcuNSB3YXMgY29uc2lzdGVudGx5 IH4xOC0yMCUgZmFzdGVyIHRoYW4gUnVieSAzLjIuMCBpbiB0aGlzIEJlbmNobWFyaw0NCg0NCiFb U2NyZWVuc2hvdCAyMDIzLTAyLTE1IGF0IDEzIDE2IDEwXShodHRwczovL3VzZXItaW1hZ2VzLmdp dGh1YnVzZXJjb250ZW50LmNvbS83ODY1MDMwLzIxOTAzODQzMC00YTEyNGNjNi0wZDIzLTQ2ZTIt OTc5NC1kODlkMWYyNmUyMjcucG5nKQ0NCg0NCiMjIE5leHQgU3RlcHMNDQoNDQpJIGFtIGhhcHB5 IHRvIGhlbHAgaW52ZXN0aWdhdGUgb3IgbGVhcm4gbW9yZSBhYm91dCB0aGlzIHJlZ3Jlc3Npb24g aWYgYW55b25lIGhhcyBhbnkgaWRlYXMuIA0NCg0NCg0NCg0NCi0tIA0NCmh0dHBzOi8vYnVncy5y dWJ5LWxhbmcub3JnLw0NCiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCiBydWJ5LWNvcmUgbWFpbGluZyBsaXN0IC0tIHJ1YnktY29yZUBtbC5ydWJ5LWxhbmcu b3JnCiBUbyB1bnN1YnNjcmliZSBzZW5kIGFuIGVtYWlsIHRvIHJ1YnktY29yZS1sZWF2ZUBtbC5y dWJ5LWxhbmcub3JnCiBydWJ5LWNvcmUgaW5mbyAtLSBodHRwczovL21sLnJ1YnktbGFuZy5vcmcv bWFpbG1hbjMvcG9zdG9yaXVzL2xpc3RzL3J1YnktY29yZS5tbC5ydWJ5LWxhbmcub3JnLw==