-
-
Couldn't load subscription status.
- Fork 33.2k
gh-134043: add _PyObject_GetMethodStackRef
#134044
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
Conversation
…thon; branch 'main' of https://github.com/python/cpython into stackref-call
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please add a scaling test associated with this to ftscalingbench.py
|
I have added Result on my machine before and after this PR: Before:
❯ ./python.bat Tools/ftscalingbench/ftscalingbench.py --threads=8 method_caller
Running Release|x64 interpreter...
Running benchmarks with 8 threads
method_caller 1.8x faster
After:
❯ ./python.bat Tools/ftscalingbench/ftscalingbench.py --threads=8 method_caller
Running Release|x64 interpreter...
Running benchmarks with 8 threads
method_caller 4.9x faster |
Adds `_PyObject_GetMethodStackRef` which uses stackrefs and takes advantage of deferred reference counting in free-threading while calling method objects in vectorcall.
Adds `_PyObject_GetMethodStackRef` which uses stackrefs and takes advantage of deferred reference counting in free-threading while calling method objects in vectorcall.
_PyObject_GetMethodand calling APIs #134043