Message287413
> method_fastcall2.patch is tuning same function (call_method() in typeobject.c), and uses trick to bypass temporary method object (same to _PyObject_GetMethod()).
Oh, great idea! That's why I put you in the nosy list ;-) You know better than me this area of the code.
> Median +- std dev: [python.default] 155 ns +- 4 ns -> [python] 111 ns +- 1 ns: 1.40x faster (-28%)
Wow, much better than my patch. Good job!
Can we implement the same optimization in callmethod() of Objects/abstract.c? Maybe add a "is_method" argument to the static function _PyObject_CallFunctionVa(), to only enable the optimization for callmehod(). |
|
Date |
User |
Action |
Args |
2017-02-09 12:39:32 | vstinner | set | recipients:
+ vstinner, methane, serhiy.storchaka |
2017-02-09 12:39:32 | vstinner | set | messageid: <1486643972.66.0.18395702205.issue29507@psf.upfronthosting.co.za> |
2017-02-09 12:39:32 | vstinner | link | issue29507 messages |
2017-02-09 12:39:32 | vstinner | create | |
|