You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Cache a PyUnicode object for the string of the callback name instead of looking it up each time
Use the vector calling protocol
A quick benchmark where only the xColumn callback was changed to use PyObject_VectorcallMethod, measured in calls per second by vtbench
2,085,699 Base (Old calling, no string cache)
2,253,161 Vector, PyUnicode_FromString called each time
2,678,927 Vector, PyUnicode_FromString called once
Update after initial implementation has 3 million calls per second.
vtable vector calls
vfs vector call
Other Call_PythonMethod sites
PyObject_Call sites
getfunctionargs needs vargs rewrite
Make it work on Python 3.8
Memory leak checking
Connection.execute{,many} use fastcall
PyObject_Get/SetAttrString - use string table
The text was updated successfully, but these errors were encountered:
There are two things that can be done:
A quick benchmark where only the xColumn callback was changed to use PyObject_VectorcallMethod, measured in calls per second by vtbench
2,085,699 Base (Old calling, no string cache)
2,253,161 Vector, PyUnicode_FromString called each time
2,678,927 Vector, PyUnicode_FromString called once
Update after initial implementation has 3 million calls per second.
The text was updated successfully, but these errors were encountered: