[issue42927] Inline cache for slots

2021-01-31 Thread Pablo Galindo Salgado
Pablo Galindo Salgado added the comment: New changeset a776da90b8f2a1342f4f9bfd23a62cea9a0497c6 by Pablo Galindo in branch 'master': bpo-42927: Update the What's new entry for LOAD_ATTR optimizations (GH-24383) https://github.com/python/cpython/commit/a776da90b8f2a1342f4f9bfd23a62cea9a0497c6

[issue42927] Inline cache for slots

2021-01-29 Thread Pablo Galindo Salgado
Change by Pablo Galindo Salgado : -- pull_requests: +23199 pull_request: https://github.com/python/cpython/pull/24383 ___ Python tracker ___

[issue42927] Inline cache for slots

2021-01-29 Thread Guido van Rossum
Change by Guido van Rossum : -- resolution: -> fixed stage: patch review -> commit review status: open -> closed ___ Python tracker ___

[issue42927] Inline cache for slots

2021-01-29 Thread Guido van Rossum
Guido van Rossum added the comment: New changeset 5c5a938573ce665f00e362c7766912d9b3f3b44e by Guido van Rossum in branch 'master': bpo-42927: Inline cache for attributes defined with '__slots__' (#24216) https://github.com/python/cpython/commit/5c5a938573ce665f00e362c7766912d9b3f3b44e

[issue42927] Inline cache for slots

2021-01-15 Thread Guido van Rossum
Guido van Rossum added the comment: I created a benchmark for this, see https://github.com/python/pyperformance/pull/86. Next I'll add a blurb and then it's off to reviewers. -- ___ Python tracker

[issue42927] Inline cache for slots

2021-01-15 Thread Pablo Galindo Salgado
Pablo Galindo Salgado added the comment: > What is the next step? I would say just finishing the PR (making sure that we do not miss some arcane edge case) and updating the what's new for 3.10 :) -- ___ Python tracker

[issue42927] Inline cache for slots

2021-01-14 Thread Guido van Rossum
Guido van Rossum added the comment: Thanks for all the positive feedback! What is the next step? -- ___ Python tracker ___ ___

[issue42927] Inline cache for slots

2021-01-14 Thread Raymond Hettinger
Raymond Hettinger added the comment: +1 Thanks for this. -- nosy: +rhettinger ___ Python tracker ___ ___ Python-bugs-list mailing

[issue42927] Inline cache for slots

2021-01-14 Thread Batuhan Taskaya
Change by Batuhan Taskaya : -- nosy: +BTaskaya ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue42927] Inline cache for slots

2021-01-14 Thread Pablo Galindo Salgado
Pablo Galindo Salgado added the comment: > This is a great result, IMO. I'm +1 to merge this. Same here. It would be good if Inada-san could confirm the benchmarks. > Can you add a new one `read_slots`? That should be "read_instancevar_slots". Or you refer to some other check? --

[issue42927] Inline cache for slots

2021-01-14 Thread Yury Selivanov
Yury Selivanov added the comment: > Some microbenchmarks: Can you add a new one `read_slots`? -- ___ Python tracker ___ ___

[issue42927] Inline cache for slots

2021-01-14 Thread Yury Selivanov
Yury Selivanov added the comment: > So it seems that everything is in the noise range except the "float" > benchmark that is 1.11x faster Yeah, this is why. https://github.com/python/pyperformance/blob/master/pyperformance/benchmarks/bm_float.py#L12 This is a great result, IMO. I'm +1 to

[issue42927] Inline cache for slots

2021-01-14 Thread Pablo Galindo Salgado
Pablo Galindo Salgado added the comment: Some microbenchmarks: CURRENT MASTER: Variable and attribute read access: 4.5 ns read_local 5.8 ns read_nonlocal 7.8 ns read_global 7.8 ns read_builtin 21.2 ns read_classvar_from_class 19.1 ns

[issue42927] Inline cache for slots

2021-01-14 Thread Pablo Galindo Salgado
Pablo Galindo Salgado added the comment: So it seems that everything is in the noise range except the "float" benchmark that is 1.11x faster -- ___ Python tracker ___

[issue42927] Inline cache for slots

2021-01-14 Thread Pablo Galindo Salgado
Pablo Galindo Salgado added the comment: These are the results: venv ❯ python -m pyperf compare_to json_old/* -G --min-speed=2 --table +-+--+--+ | Benchmark |

[issue42927] Inline cache for slots

2021-01-14 Thread Pablo Galindo Salgado
Pablo Galindo Salgado added the comment: I will try to run today the pyperformance test suite to see if there is any impact on standard attribute access -- ___ Python tracker

[issue42927] Inline cache for slots

2021-01-14 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: Slot means so many different things in Python. Here it's about data descriptors created when you set __slots__ in the class definition. It is amazing that so large speed up can be achieved for such base operation. -- nosy: +serhiy.storchaka

[issue42927] Inline cache for slots

2021-01-13 Thread Guido van Rossum
Change by Guido van Rossum : -- keywords: +patch pull_requests: +23043 stage: test needed -> patch review pull_request: https://github.com/python/cpython/pull/24216 ___ Python tracker

[issue42927] Inline cache for slots

2021-01-13 Thread Guido van Rossum
New submission from Guido van Rossum : I've been thinking about Python performance improvements, and I played around with an inline cache enhancement that supports slots. The results on a very simple benchmark look promising (30% speedup) but I'm terrible with our benchmarking tools, and