Skip to content

Optimizing list.sort() by performing safety checks in advance #72871

@embg

Description

@embg
mannequin
BPO 28685
Nosy @tim-one, @rhettinger, @vstinner, @serhiy-storchaka, @eryksun, @pppery, @JulienPalard, @embg, @godaygo
PRs
  • bpo-28685: Optimize sorted() list.sort() with type-specialized comparisons #582
  • bpo-28685: Fix compiler warning in listobject.c #5423
  • Files
  • fastsort.patch
  • fastsort.patch: Slightly simplified the patch code and removed the #define Py_ABS.
  • 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/rhettinger'
    closed_at = <Date 2018-01-29.03:04:11.973>
    created_at = <Date 2016-11-13.21:19:40.081>
    labels = ['interpreter-core', '3.7', 'performance']
    title = 'Optimizing list.sort() by performing safety checks in advance'
    updated_at = <Date 2018-01-29.12:47:08.795>
    user = 'https://github.com/embg'

    bugs.python.org fields:

    activity = <Date 2018-01-29.12:47:08.795>
    actor = 'vstinner'
    assignee = 'rhettinger'
    closed = True
    closed_date = <Date 2018-01-29.03:04:11.973>
    closer = 'rhettinger'
    components = ['Interpreter Core']
    creation = <Date 2016-11-13.21:19:40.081>
    creator = 'elliot.gorokhovsky'
    dependencies = []
    files = ['45477', '45508']
    hgrepos = []
    issue_num = 28685
    keywords = ['patch']
    message_count = 43.0
    messages = ['280718', '280772', '280799', '280801', '280815', '280978', '280987', '281668', '289192', '289339', '289394', '289422', '289426', '289429', '289432', '289434', '289435', '289447', '289462', '289464', '289465', '289466', '289467', '289468', '289469', '289470', '289471', '289472', '289474', '289475', '289476', '289477', '289508', '289518', '289523', '310979', '310989', '310997', '311024', '311042', '311046', '311049', '311118']
    nosy_count = 9.0
    nosy_names = ['tim.peters', 'rhettinger', 'vstinner', 'serhiy.storchaka', 'eryksun', 'ppperry', 'mdk', 'elliot.gorokhovsky', 'godaygo']
    pr_nums = ['582', '5423']
    priority = 'high'
    resolution = 'fixed'
    stage = 'resolved'
    status = 'closed'
    superseder = None
    type = 'performance'
    url = 'https://bugs.python.org/issue28685'
    versions = ['Python 3.7']

    Metadata

    Metadata

    Assignees

    Labels

    3.7 (EOL)end of lifeinterpreter-core(Objects, Python, Grammar, and Parser dirs)performancePerformance or resource usage

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions