[Python-Dev] Benchmarks why we need PEP 576/579/580

Jeroen Demeyer J.Demeyer at UGent.be
Sat Jul 21 13:59:19 EDT 2018


On 2018-07-21 19:07, INADA Naoki wrote:
> Good job.  But I already +1 for adding support for extension callable type.
> Do you think this benchmark can be optimized more in future optimization
> which is possible by PEP 580, but not 576?

I should clarify that the benchmark did not involve an implementation of 
PEP 576 or PEP 580. It simply shows what kind of regressions one gets 
when *not* implementing something like those PEPs.

So this can't be used to compare PEP 576 versus PEP 580. I still think 
that PEP 576 would slow down bound method calls but without a reference 
implementation, I can only guess. (I know that PEP 576 claims a 
reference implementation but it doesn't correspond to the PEP. I'm 
basing myself on the text of PEP 576, not the "reference implementation".)

> Do you mean you backport LOAD_METHOD and fastcall to Python 2.7
> for benchmarking?

No, I did not. This is just benchmarking the difference between tp_call 
and more specialized call functions (In Python 2.7, that is 
call_function()).


Jeroen.



More information about the Python-Dev mailing list