[Patches] [ python-Patches-876193 ] reorganize, extend function call optimizations

SourceForge.net noreply at sourceforge.net
Tue Jan 13 11:35:25 EST 2004


Patches item #876193, was opened at 2004-01-13 16:35
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=305470&aid=876193&group_id=5470

Category: Core (C code)
Group: Python 2.4
Status: Open
Resolution: None
Priority: 5
Submitted By: Michael Hudson (mwh)
Assigned to: Jeremy Hylton (jhylton)
Summary: reorganize, extend function call optimizations

Initial Comment:
This patch rejigs the optimizations for certain kinds
of function call -- easy Python functions, METH_O
functions and so on.

It also extends the "easy Python function" optimization
to handle default arguments.

It adds a tp_pythoncall field to type objects, with the
signature of the ceval.c local static function do_call
(which is now exported and called PyEval_DoCall).  This
field is filled out in the function and method
constructors appropriately.

What do you think?  Makes little performance difference
(0.5% improvement in pystone on one machine), but I
think I prefer this arrangement.  It generalizes
better, for one thing.

The patch is a little untidy at present -- some code
duplication and it utterly mangles the function call
statistics code -- but these should be shallow.

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=305470&aid=876193&group_id=5470



More information about the Patches mailing list