[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2017-03-31 Thread Donald Stufft
Changes by Donald Stufft : -- pull_requests: +996 ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-12 Thread Raymond Hettinger
Raymond Hettinger added the comment: I think small changes are fine while there is still another beta ahead but would rather just push it to 3.7 than spend more time talking about it. -- resolution: -> fixed status: open -> closed ___ Python tracker

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-12 Thread Roundup Robot
Roundup Robot added the comment: New changeset 5f3b7ceb394c by Raymond Hettinger in branch 'default': Issue #28665: Use macro form of PyCell_GET/SET https://hg.python.org/cpython/rev/5f3b7ceb394c -- ___ Python tracker

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-12 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: The argument about "harmonizing" doesn't look strong to me. Opcodes for locals use the SETLOCAL() macro which decrefs old value, while opcodes for nonlocals with your patches use the PyCell_SET() macro which doesn't. But performance arguments look more weig

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-12 Thread Raymond Hettinger
Raymond Hettinger added the comment: I think the speed benefit for the last two patches is likely too modest to care about. The main reason I did the work was because you suggested it and because it seemed like a reasonable idea (the patched code looks nice, it does only work that is necessary

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-12 Thread Raymond Hettinger
Raymond Hettinger added the comment: I think to speed benefit for the last two patches is likely too modest to care about. The main reason I did the work was because you suggested it and because it seemed like a reasonable idea (the patched code looks nice, it does only work that is necessary,

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-12 Thread Raymond Hettinger
Changes by Raymond Hettinger : -- Removed message: http://bugs.python.org/msg280641 ___ Python tracker ___ ___ Python-bugs-list mailin

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-12 Thread Raymond Hettinger
Changes by Raymond Hettinger : -- Removed message: http://bugs.python.org/msg280637 ___ Python tracker ___ ___ Python-bugs-list mailin

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-11 Thread Raymond Hettinger
Raymond Hettinger added the comment: No thanks. These aren't really important opcodes. While there may be a modest speed improvement for the same reasons as the previous patch (avoiding unnecessary work), the main reason to do these two patches is because you had suggested it and because it m

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-11 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: Could you please measure the performance effect of these changes? -- ___ Python tracker ___ ___ Py

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-11 Thread Raymond Hettinger
Changes by Raymond Hettinger : -- assignee: rhettinger -> serhiy.storchaka Added file: http://bugs.python.org/file45455/concat_deref.diff ___ Python tracker ___ _

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-11 Thread Raymond Hettinger
Changes by Raymond Hettinger : Added file: http://bugs.python.org/file45454/delete_deref.diff ___ Python tracker ___ ___ Python-bugs-list mail

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-11 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: You forgot to merge and created new head. -- ___ Python tracker ___ ___ Python-bugs-list mailing l

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-11 Thread Roundup Robot
Roundup Robot added the comment: New changeset 7ec45e7d2194 by Serhiy Storchaka in branch 'default': Merge from 3.6 (issue #28665). https://hg.python.org/cpython/rev/7ec45e7d2194 -- ___ Python tracker _

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-11 Thread Roundup Robot
Roundup Robot added the comment: New changeset d78d45436753 by Raymond Hettinger in branch '3.6': Issue #28665: Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF giving a 40% speedup. https://hg.python.org/cpython/rev/d78d45436753 -- nosy: +python-dev ___

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-11 Thread Raymond Hettinger
Raymond Hettinger added the comment: Thanks for the quick review. I'll look at the other two cases when I get a chance. -- assignee: serhiy.storchaka -> rhettinger priority: normal -> low ___ Python tracker _

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-11 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: LGTM. This saves function call and INCREF/DECREF pair. What about DELETE_DEREF? PyCell_Set() also is used in unicode_concatenate(). -- ___ Python tracker ___

[issue28665] Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF

2016-11-11 Thread Raymond Hettinger
New submission from Raymond Hettinger: The STORE_FAST, LOAD_FAST, and LOAD_DEREF opcodes all use fast macros for variable access. This patch harmonizes STORE_DEREF to follow the same pattern. Both the C code and the generated assembly look nicer. Gives an approx 40% speed-up (using both Clan