Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

reorganize, extend function call optimizations #39813

Closed
mwhudson opened this issue Jan 13, 2004 · 9 comments
Closed

reorganize, extend function call optimizations #39813

mwhudson opened this issue Jan 13, 2004 · 9 comments
Assignees
Labels
interpreter-core (Objects, Python, Grammar, and Parser dirs) performance Performance or resource usage

Comments

@mwhudson
Copy link

BPO 876193
Nosy @mwhudson, @akuchling, @birkenfeld, @devdanzin, @jeremyhylton
Files
  • function-optimization-reorg.diff: mwh's patch Support "bpo-" in Misc/NEWS #1
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = 'https://github.com/mwhudson'
    closed_at = <Date 2010-02-22.22:07:26.094>
    created_at = <Date 2004-01-13.16:35:24.000>
    labels = ['interpreter-core', 'performance']
    title = 'reorganize, extend function call optimizations'
    updated_at = <Date 2010-02-22.22:11:04.638>
    user = 'https://github.com/mwhudson'

    bugs.python.org fields:

    activity = <Date 2010-02-22.22:11:04.638>
    actor = 'Jeremy.Hylton'
    assignee = 'mwh'
    closed = True
    closed_date = <Date 2010-02-22.22:07:26.094>
    closer = 'mwh'
    components = ['Interpreter Core']
    creation = <Date 2004-01-13.16:35:24.000>
    creator = 'mwh'
    dependencies = []
    files = ['5787']
    hgrepos = []
    issue_num = 876193
    keywords = ['patch']
    message_count = 9.0
    messages = ['45281', '45282', '45283', '45284', '45285', '82014', '99834', '99851', '99853']
    nosy_count = 7.0
    nosy_names = ['mwh', 'jhylton', 'akuchling', 'richard', 'georg.brandl', 'ajaksu2', 'Jeremy.Hylton']
    pr_nums = []
    priority = 'normal'
    resolution = 'out of date'
    stage = None
    status = 'closed'
    superseder = None
    type = 'performance'
    url = 'https://bugs.python.org/issue876193'
    versions = ['Python 2.4']

    @mwhudson
    Copy link
    Author

    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.

    @mwhudson mwhudson self-assigned this Jan 13, 2004
    @mwhudson mwhudson added the interpreter-core (Objects, Python, Grammar, and Parser dirs) label Jan 13, 2004
    @mwhudson mwhudson self-assigned this Jan 13, 2004
    @mwhudson mwhudson added the interpreter-core (Objects, Python, Grammar, and Parser dirs) label Jan 13, 2004
    @jhylton
    Copy link
    Mannequin

    jhylton mannequin commented Nov 7, 2004

    Logged In: YES
    user_id=31392

    Is this patch still relevant? Should it wait until 2.5?

    @mwhudson
    Copy link
    Author

    mwhudson commented Nov 8, 2004

    Logged In: YES
    user_id=6656

    Well, nothing has invalidated it. I think I still would like to see it
    go in, but don't have strong opinions either way. What do you
    think of it? :-)

    It should certainly wait for 2.5.

    @birkenfeld
    Copy link
    Member

    Logged In: YES
    user_id=1188172

    2.5 is nearing, so what to do?

    @richard
    Copy link
    Mannequin

    richard mannequin commented May 23, 2006

    Logged In: YES
    user_id=6405

    This patch is far too out of date to apply to 2.5

    @devdanzin
    Copy link
    Mannequin

    devdanzin mannequin commented Feb 14, 2009

    Can the patch be updated?

    @devdanzin devdanzin mannequin added performance Performance or resource usage labels Feb 14, 2009
    @akuchling
    Copy link
    Member

    Is this patch still of interest?

    @mwhudson
    Copy link
    Author

    I guess not.

    @jeremyhylton
    Copy link
    Contributor

    Might be worth looking at for 2.x anyway.

    @ezio-melotti ezio-melotti transferred this issue from another repository Apr 9, 2022
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    interpreter-core (Objects, Python, Grammar, and Parser dirs) performance Performance or resource usage
    Projects
    None yet
    Development

    No branches or pull requests

    4 participants