Serhiy Storchaka added the comment:

Benchmarking results look nice, but despite the fact that this patch is only 
small part of issue26814, it looks to me larger that it could be.

1. The patch includes two parts: adding _PyObject_FastCall() and adding 
PyObject_CallNoArg() and PyObject_CallArg1(). How large the role of latter 
functions in the speed up? Can we first just add _PyObject_FastCall() and 
measure the effect of adding PyObject_CallNoArg() and PyObject_CallArg1() 
separately? Can existing function PyObject_Call() be optimized to achieve a 
comparable benefit?

2. I think that supporting keyword arguments in _PyObject_FastCall() doesn't 
make much sense now. Calling with keyword arguments adds such much overhead, 
that it dwarfs the benefit of avoiding the creation of one tuple. I think that 
the patch can be simpler if drop the support of keyword arguments.

3. The patch adds two files for one function _PyStack_AsTuple(). I would prefer 
something like _PyTuple_FromArray(). It could be used in other places, not just 
in argument parsing.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue27128>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to