Re: Help me understand why PyPy is so slow in my benchmark
Manuel Jacob <[email protected]> Wed, 18 Sep 2024 21:32:59 +0200
| Newsgroups | gmane.comp.python.pypy |
|---|---|
| Message-ID | <[email protected]> |
T24gMTgvMDkvMjAyNCAwNS40MywgSmVyZW15IEJyb3duIHdyb3RlOg0KPiBIZWxsbywNCj4gDQo+ IEknbSB3b3JraW5nIG9uIGEgcHJvamVjdCB0aGF0IGludm9sdmVzIGJlbmNobWFya2luZyBDUHl0 aG9uIGFuZCBQeVB5DQo+IGFjcm9zcyBhIGZldyBiZW5jaG1hcmtzIEkndmUgZGV2aXNlZCwgYnV0 IFB5UHkgaXMgc28gbXVjaCBzbG93ZXIgdGhhbg0KPiBDUHl0aG9uIEkgZmVlbCBJIG11c3QgaGF2 ZSBtYWRlIHNvbWUgc29ydCBvZiBtaXN0YWtlLiBPbmUgbWFqb3INCj4gaGVhZHNjcmF0Y2hlciBp cyB0aGF0IENQeXRob24gcnVudGltZXMgaG9sZCBzdGFibGUgd2hpbGUgUHlQeSBhcHBlYXJzDQo+ IHRvIGdldCB3b3JzZSBhcyB0aGUgYmVuY2htYXJrIHByb2dyZXNzZXMuDQo+IA0KPiBJJ3ZlIGlu Y2x1ZGVkIGFuIGV4Y2VycHQgb2YgdGhlIGJlbmNobWFyayBiZWxvdyB0aGF0IHNob3dzIHRoZSBp c3N1ZSwNCj4gaWYgSSBjYW4gYXR0YWNoIGZpbGVzIHRoYXQgd29uJ3QgYmUgbG9zdCBJIGNhbiBh dHRhY2ggYSBmdWxsIGNvcHk7IEkNCj4gZG9uJ3QgYmVsaWV2ZSB0aGUgc3RyaW5nIG9wZXJhdGlv bnMgYXJlIHRoZSBpc3N1ZSBiZWNhdXNlIHRoZQ0KPiBtaWNyby10dW5pbmcgdGlwcyBzdWdnZXN0 IHRoZSBKSVQgcmVkdWNlcyBjb25jYXRlbmF0aW9uIG92ZXJoZWFkIGluDQo+IHNjZW5hcmlvcyBs aWtlIHRoZXNlIChpZiBJJ20gcmVhZGluZyB0aGUgcGFnZSByaWdodCkuIFsxXQ0KDQpIaSBKZXJl bXksDQoNClRoZSBwYWdlIHlvdSBsaW5rZWQgDQooaHR0cHM6Ly9weXB5Lm9yZy9wZXJmb3JtYW5j ZS5odG1sI3N0cmluZy1jb25jYXRlbmF0aW9uLWlzLWV4cGVuc2l2ZSkgc2F5czoNCg0K4oCcUHlQ eSdzIEpJVCBtYWtlcyB0aGUgb3ZlcmhlYWQgb2YgaW50ZXJtZWRpYXRlIGNvbmNhdGVuYXRpb25z IGdvIGF3YXkgaW4gDQpsaW5lYXIgY29kZSB0aGF0IGtlZXBzIHRoZSBudW1iZXIgb2YgY29uY2F0 ZW5hdGlvbnMgc21hbGwsIGJvdW5kIGFuZCANCmNvbnN0YW504oCdDQoNCllvdXIgY29kZSBpcyBu b3QgbGluZWFyIGFuZCB0aGUgbnVtYmVyIG9mIGNvbmNhdGVuYXRpb25zIGlzIG5vdCBib3VuZGVk Lg0KDQrigJxPbiB0aGUgb3RoZXIgaGFuZCwgaW4gY29kZSBsaWtlIHRoaXMgd2l0aCBhIHN0cmlu Zy12YWx1ZWQgZm9vKCkgDQpmdW5jdGlvbjogW2NvZGUgZXhhbXBsZV0gdGhlIEpJVCBjYW5ub3Qg b3B0aW1pemUgb3V0IGludGVybWVkaWF0ZSANCmNvcGllcy4gVGhpcyBjb2RlIGlzIGFjdHVhbGx5 IHF1YWRyYXRpYyBpbiB0aGUgdG90YWwgc2l6ZSBvZiB0aGUgbXlsaXN0IA0Kc3RyaW5ncyBkdWUg dG8gcmVwZWF0ZWQgc3RyaW5nIGNvcGllcyBvZiBldmVyLWxhcmdlciBwcmVmaXggc2VnbWVudHMu 4oCdDQoNCllvdXIgY29kZSBpcyBtb3JlIHNpbWlsYXIgdG8gdGhlIGNvZGUgZXhhbXBsZSB0aGF0 IHNob3dzIGEgY2FzZSB3aGVyZSANCnRoZSBvcHRpbWl6YXRpb24gZG9lc27igJl0IHdvcmsuDQoN CkRvZXMgdGhhdCBleHBsYWluIHRoZSBiZWhhdmlvciB5b3XigJlyZSBzZWVpbmc/IEZlZWwgZnJl ZSB0byBtYWtlIA0Kc3VnZ2VzdGlvbnMgb24gaG93IHRvIGNsYXJpZnkgdGhlIHdvcmRpbmcuDQoN Ci1NYW51ZWwNCg0KPiBkZWYgcmVjdXJzZShudW0pOg0KPiAgICAgIGlmIG51bSA+PSAxMDAwOg0K PiAgICAgICAgICByZXR1cm4gIk0iICsgcmVjdXJzZShudW0gLSAxMDAwKQ0KPiANCj4gICAgICBl bGlmIG51bSA+PSA5MDA6DQo+ICAgICAgICAgIHJldHVybiAiQ00iICsgcmVjdXJzZShudW0gLSA5 MDApDQo+IA0KPiAgICAgIGVsaWYgbnVtID49IDUwMDoNCj4gICAgICAgICAgcmV0dXJuICJEIiAr IHJlY3Vyc2UobnVtIC0gNTAwKQ0KPiANCj4gICAgICBlbGlmIG51bSA+PSA0MDA6DQo+ICAgICAg ICAgIHJldHVybiAiQ0QiICsgcmVjdXJzZShudW0gLSA0MDApDQo+IA0KPiAgICAgIGVsaWYgbnVt ID49IDEwMDoNCj4gICAgICAgICAgcmV0dXJuICJDIiArIHJlY3Vyc2UobnVtIC0gMTAwKQ0KPiAN Cj4gICAgICBlbGlmIG51bSA+PSA5MDoNCj4gICAgICAgICAgcmV0dXJuICJYQyIgKyByZWN1cnNl KG51bSAtIDkwKQ0KPiANCj4gICAgICBlbGlmIG51bSA+PSA1MDoNCj4gICAgICAgICAgcmV0dXJu ICJMIiArIHJlY3Vyc2UobnVtIC0gNTApDQo+IA0KPiAgICAgIGVsaWYgbnVtID49IDQwOg0KPiAg ICAgICAgICByZXR1cm4gIlhMIiArIHJlY3Vyc2UobnVtIC0gNDApDQo+IA0KPiAgICAgIGVsaWYg bnVtID49IDEwOg0KPiAgICAgICAgICByZXR1cm4gIlgiICsgcmVjdXJzZShudW0gLSAxMCkNCj4g DQo+ICAgICAgZWxpZiBudW0gPj0gOToNCj4gICAgICAgICAgcmV0dXJuICJJWCIgKyByZWN1cnNl KG51bSAtIDkpDQo+IA0KPiAgICAgIGVsaWYgbnVtID49IDU6DQo+ICAgICAgICAgIHJldHVybiAi ViIgKyByZWN1cnNlKG51bSAtIDUpDQo+IA0KPiAgICAgIGVsaWYgbnVtID49IDQ6DQo+ICAgICAg ICAgIHJldHVybiAiSVYiICsgcmVjdXJzZShudW0gLSA0KQ0KPiANCj4gICAgICBlbGlmIG51bSA+ PSAxOg0KPiAgICAgICAgICByZXR1cm4gIkkiICsgcmVjdXJzZShudW0gLSAxKQ0KPiANCj4gICAg ICBlbHNlOg0KPiAgICAgICAgICByZXR1cm4gIiINCj4gDQo+IC1KZXJlbXkNCj4gDQo+IFsxXTog aHR0cHM6Ly9weXB5Lm9yZy9wZXJmb3JtYW5jZS5odG1sI21pY3JvLXR1bmluZy10aXBzDQo+IF9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQo+IHB5cHktZGV2 IG1haWxpbmcgbGlzdCAtLSBweXB5LWRldkBweXRob24ub3JnDQo+IFRvIHVuc3Vic2NyaWJlIHNl bmQgYW4gZW1haWwgdG8gcHlweS1kZXYtbGVhdmVAcHl0aG9uLm9yZw0KPiBodHRwczovL21haWwu cHl0aG9uLm9yZy9tYWlsbWFuMy9saXN0cy9weXB5LWRldi5weXRob24ub3JnLw0KPiBNZW1iZXIg YWRkcmVzczogbWVAbWFudWVsamFjb2IuZGUNCg0KX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KcHlweS1kZXYgbWFpbGluZyBsaXN0IC0tIHB5cHktZGV2QHB5 dGhvbi5vcmcKVG8gdW5zdWJzY3JpYmUgc2VuZCBhbiBlbWFpbCB0byBweXB5LWRldi1sZWF2ZUBw eXRob24ub3JnCmh0dHBzOi8vbWFpbC5weXRob24ub3JnL21haWxtYW4zL2xpc3RzL3B5cHktZGV2 LnB5dGhvbi5vcmcvCk1lbWJlciBhZGRyZXNzOiBnY3BwLXB5cHktZGV2LTE0LTFAbS5nbWFuZS1t eC5vcmcK