Skip to content

[3.11] GH-93516: Backport GH-93769: Store offset of first traceable instruction in code object - #93818

Closed
markshannon wants to merge 1 commit into
python:3.11from
faster-cpython:backport-93516
Closed

[3.11] GH-93516: Backport GH-93769: Store offset of first traceable instruction in code object#93818
markshannon wants to merge 1 commit into
python:3.11from
faster-cpython:backport-93516

Conversation

@markshannon

Copy link
Copy Markdown
Member

No description provided.

@markshannon

markshannon commented Jun 14, 2022

Copy link
Copy Markdown
MemberAuthor

The ABI check fails, due to adding the _co_firsttraceable field.
I've added it near the end, so that code that accesses fields other that co_extra and co_code_adaptive will not be effected.

@nedbat

Copy link
Copy Markdown
Member

I tried this compared to 3.11.0b3, and this code is slightly slower?

covprojpython3.11gh9381893818 vs 3.11
6.4.1bug1339.py0.846 s0.856 s101.20%
6.4.1bm_sudoku.py55.436 s57.561 s103.83%
6.4.1bm_spectral_norm.py66.488 s68.803 s103.48%

@markshannon

Copy link
Copy Markdown
MemberAuthor

Odd.
I wouldn't expect this to have much effect compared to removing the overhead of line number lookup, or caching the result of PyCode_GetCode(), but I would expect it to be positive.

Let's remeasure after those are merged.

)
* Use a lookup table to reduce overhead of getting line numbers during tracing.
@pablogsal

Copy link
Copy Markdown
Member

I'm regenerating the ABI in this PR

@pablogsal

Copy link
Copy Markdown
Member

@markshannon I cannot push to the remote repo, could you please ensure the "allow pushes from maintainers checkbox is activated on the right column"?

@markshannon

Copy link
Copy Markdown
MemberAuthor

Closing this until I've had time to investigate the slowdown once #94127 is merged.

@markshannon
markshannon deleted the backport-93516 branch September 26, 2023 12:55
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@markshannon@nedbat@pablogsal@bedevere-bot