This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Specialize STORE_SUBSCR
Type: performance Stage: resolved
Components: Interpreter Core Versions: Python 3.11
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: Dennis Sweeney, Mark.Shannon
Priority: normal Keywords: patch

Created on 2021-10-26 00:42 by Dennis Sweeney, last changed 2022-04-11 14:59 by admin. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 29221 closed Dennis Sweeney, 2021-10-26 00:44
PR 29242 merged Dennis Sweeney, 2021-10-27 15:22
PR 30193 merged Dennis Sweeney, 2021-12-19 02:37
Messages (3)
msg405015 - (view) Author: Dennis Sweeney (Dennis Sweeney) * (Python committer) Date: 2021-10-26 00:42
See the issue here for lots of data from before specializing: https://github.com/faster-cpython/ideas/issues/105

See https://gist.github.com/sweeneyde/91855e50feb9992b604ddda2d4f1511e for specialization data, pyperformance benchmarks, and microbenchmarks.

Right now the PR draft specializes list[int], dict[str], and bytearray[int], although I don't if the bytearray opcode should be kept. I considered specializing dict[object], but I figured the overhead of PyDict_SetItem isn't that much less than PyObject_SetItem.
msg406577 - (view) Author: Mark Shannon (Mark.Shannon) * (Python committer) Date: 2021-11-19 10:30
New changeset 036fead695a9a1e1082992d16ab46bca1cd61a25 by Dennis Sweeney in branch 'main':
bpo-45609: Specialize STORE_SUBSCR (GH-29242)
https://github.com/python/cpython/commit/036fead695a9a1e1082992d16ab46bca1cd61a25
msg409695 - (view) Author: Mark Shannon (Mark.Shannon) * (Python committer) Date: 2022-01-04 18:05
New changeset 7537f6008704b20e2d04a7ef1c0cfa34121cc5eb by Dennis Sweeney in branch 'main':
bpo-45609: More specialization stats for STORE_SUBSCR (GH-30193)
https://github.com/python/cpython/commit/7537f6008704b20e2d04a7ef1c0cfa34121cc5eb
History
Date User Action Args
2022-04-11 14:59:51adminsetgithub: 89772
2022-01-04 18:05:28Mark.Shannonsetmessages: + msg409695
2021-12-19 02:37:49Dennis Sweeneysetpull_requests: + pull_request28414
2021-11-20 18:31:08pablogsalsetstatus: open -> closed
resolution: fixed
stage: patch review -> resolved
2021-11-19 10:30:49Mark.Shannonsetnosy: + Mark.Shannon
messages: + msg406577
2021-10-27 15:22:09Dennis Sweeneysetpull_requests: + pull_request27505
2021-10-26 00:44:54Dennis Sweeneysetkeywords: + patch
stage: patch review
pull_requests: + pull_request27484
2021-10-26 00:42:26Dennis Sweeneycreate