Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GH-117224: Move the body of a few large-ish micro-ops into helper functions #122601

Merged
merged 3 commits into from
Aug 2, 2024

Conversation

markshannon
Copy link
Member

@markshannon markshannon commented Aug 2, 2024

Moves the bodies of _LOAD_GLOBAL, GET_ANEXT, GET_AWAITABLE and LOAD_NAME into helper functions.

@mdboom
Copy link
Contributor

mdboom commented Aug 2, 2024

How does this differ from #117224, which ended being unhelpful / inconclusive?

@markshannon
Copy link
Member Author

I'd forgotten about that issue.

@markshannon markshannon changed the title GH-122598: Move the body of a few large-ish micro-ops into helper functions GH-117224: Move the body of a few large-ish micro-ops into helper functions Aug 2, 2024
@markshannon
Copy link
Member Author

Failures are due to network issues on embedded platforms

@markshannon markshannon merged commit 7aca84e into python:main Aug 2, 2024
53 of 57 checks passed
@mdboom
Copy link
Contributor

mdboom commented Aug 3, 2024

Out of curiosity, I ran benchmarking on this PR. While for most configurations, the difference is within the noise, for the JIT on Windows, it's around 1.09x faster. nbody alone is like 1.92x faster, and nbody is also notably the benchmark that spends the most time percentage-wise in the JIT. So, somehow this was a magic unlock for JIT performance on Windows-only -- if we can better understand why, maybe this will help elsewhere.

Cc: @brandtbucher

@markshannon markshannon deleted the shrink-uops branch August 6, 2024 10:14
brandtbucher pushed a commit to brandtbucher/cpython that referenced this pull request Aug 7, 2024
blhsing pushed a commit to blhsing/cpython that referenced this pull request Aug 22, 2024
Sign up for free to 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.

3 participants