Issue38644
Created on 2019-10-30 14:31 by vstinner, last changed 2022-04-11 14:59 by admin. This issue is now closed.
| Pull Requests | |||
|---|---|---|---|
| URL | Status | Linked | Edit |
| PR 16997 | merged | vstinner, 2019-10-30 14:46 | |
| PR 17046 | merged | vstinner, 2019-11-04 17:11 | |
| PR 17050 | merged | vstinner, 2019-11-04 23:52 | |
| PR 17052 | merged | vstinner, 2019-11-05 00:46 | |
| PR 17089 | merged | vstinner, 2019-11-08 09:48 | |
| PR 17131 | merged | vstinner, 2019-11-12 20:41 | |
| PR 17183 | merged | vstinner, 2019-11-15 23:33 | |
| PR 17185 | merged | vstinner, 2019-11-15 23:45 | |
| PR 17990 | merged | vstinner, 2020-01-13 16:26 | |
| PR 18222 | merged | vstinner, 2020-01-27 22:54 | |
| PR 18399 | merged | vstinner, 2020-02-07 10:01 | |
| PR 18461 | merged | vstinner, 2020-02-11 13:10 | |
| PR 19034 | closed | vstinner, 2020-03-17 01:06 | |
| PR 19180 | merged | vstinner, 2020-03-26 17:17 | |
| PR 19182 | merged | vstinner, 2020-03-26 18:16 | |
| PR 19183 | merged | vstinner, 2020-03-26 18:20 | |
| PR 19184 | merged | vstinner, 2020-03-26 19:12 | |
| Messages (24) | |||
|---|---|---|---|
| msg355716 - (view) | Author: STINNER Victor (vstinner) * | Date: 2019-10-30 14:31 | |
Follow-up of bpo-36710 for function calls. |
|||
| msg355717 - (view) | Author: STINNER Victor (vstinner) * | Date: 2019-10-30 15:00 | |
PR 16997 is a first step. The second step will be to pass tstate to: * _PyObject_Vectorcall() * _PyObject_MakeTpCall() * _Py_CheckFunctionResult() (I have a local branch that I have to rewrite on top of PR 16997.) |
|||
| msg355974 - (view) | Author: STINNER Victor (vstinner) * | Date: 2019-11-04 18:48 | |
New changeset f4b1e3d7c64985f5d5b00f6cc9a1c146bbbfd613 by Victor Stinner in branch 'master': bpo-38644: Add Py_EnterRecursiveCall() to the limited API (GH-17046) https://github.com/python/cpython/commit/f4b1e3d7c64985f5d5b00f6cc9a1c146bbbfd613 |
|||
| msg355984 - (view) | Author: STINNER Victor (vstinner) * | Date: 2019-11-04 23:51 | |
New changeset be434dc0380d9f5c7c800de9943cc46d55fd9491 by Victor Stinner in branch 'master': bpo-38644: Pass tstate to Py_EnterRecursiveCall() (GH-16997) https://github.com/python/cpython/commit/be434dc0380d9f5c7c800de9943cc46d55fd9491 |
|||
| msg355987 - (view) | Author: STINNER Victor (vstinner) * | Date: 2019-11-05 00:22 | |
New changeset 17269090940aa20f6079a6b9f27ae319f8cdae14 by Victor Stinner in branch 'master': bpo-38644: Pass tstate to _Py_CheckFunctionResult() (GH-17050) https://github.com/python/cpython/commit/17269090940aa20f6079a6b9f27ae319f8cdae14 |
|||
| msg356234 - (view) | Author: STINNER Victor (vstinner) * | Date: 2019-11-08 09:05 | |
New changeset 7e433733175e76627d46ed9bdab543860cd1452d by Victor Stinner in branch 'master': bpo-38644: Add _PyObject_VectorcallTstate() (GH-17052) https://github.com/python/cpython/commit/7e433733175e76627d46ed9bdab543860cd1452d |
|||
| msg356495 - (view) | Author: STINNER Victor (vstinner) * | Date: 2019-11-12 22:23 | |
I started a thread on python-dev about this issue: "Pass the Python thread state to internal C functions" https://mail.python.org/archives/list/python-dev@python.org/thread/PQBGECVGVYFTVDLBYURLCXA3T7IPEHHO/ |
|||
| msg356597 - (view) | Author: STINNER Victor (vstinner) * | Date: 2019-11-14 11:20 | |
New changeset b9e681261cd5ce6db0a79461c58d7cc52cfa4902 by Victor Stinner in branch 'master': bpo-38644: Add _PyEval_EvalFrame() with tstate (GH-17131) https://github.com/python/cpython/commit/b9e681261cd5ce6db0a79461c58d7cc52cfa4902 |
|||
| msg356601 - (view) | Author: STINNER Victor (vstinner) * | Date: 2019-11-14 12:36 | |
New changeset 4d231bcc77ac8ce7d11bda0804130dcdd678f710 by Victor Stinner in branch 'master': bpo-38644: Add _PyObject_Call() (GH-17089) https://github.com/python/cpython/commit/4d231bcc77ac8ce7d11bda0804130dcdd678f710 |
|||
| msg356732 - (view) | Author: STINNER Victor (vstinner) * | Date: 2019-11-16 00:03 | |
New changeset b5e170f127b57d5b0a4fb58f316acd6191509dce by Victor Stinner in branch 'master': bpo-38644: Add _PyEval_EvalCode() (GH-17183) https://github.com/python/cpython/commit/b5e170f127b57d5b0a4fb58f316acd6191509dce |
|||
| msg356734 - (view) | Author: STINNER Victor (vstinner) * | Date: 2019-11-16 00:04 | |
New changeset 51edf8aaa2e17626f9690ed29d25945fc03016b9 by Victor Stinner in branch 'master': bpo-38644: Cleanup ceval.h (GH-17185) https://github.com/python/cpython/commit/51edf8aaa2e17626f9690ed29d25945fc03016b9 |
|||
| msg356878 - (view) | Author: STINNER Victor (vstinner) * | Date: 2019-11-18 16:37 | |
One further step would be to change the VECTORCALL/FASTCALL calling convention to pass tstate. But I am not sure what is the risk to do that in Python 3.9? Cython uses FASTCALL internally for example. |
|||
| msg359916 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-01-13 16:09 | |
> One further step would be to change the VECTORCALL/FASTCALL calling convention to pass tstate. But I am not sure what is the risk to do that in Python 3.9? Cython uses FASTCALL internally for example. I started a thread on python-dev: https://mail.python.org/archives/list/python-dev@python.org/thread/PIXJAJPWKDGHSQD65VOO2B7FDLU2QLHH/ I also wrote an article on this issue, "Pass the Python thread state explicitly": https://vstinner.github.io/cpython-pass-tstate.html |
|||
| msg359920 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-01-13 17:47 | |
New changeset 2b1df4592e1691017414337514c6e378eb639498 by Victor Stinner in branch 'master': bpo-38644: Pass tstate to _Py_FinishPendingCalls() (GH-17990) https://github.com/python/cpython/commit/2b1df4592e1691017414337514c6e378eb639498 |
|||
| msg360835 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-01-28 02:37 | |
New changeset 61f4db8c56ca4b7e60050d96ecc255cfb03d92a0 by Victor Stinner in branch 'master': bpo-38644: Pass tstate in ceval.c (GH-18222) https://github.com/python/cpython/commit/61f4db8c56ca4b7e60050d96ecc255cfb03d92a0 |
|||
| msg361558 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-02-07 10:23 | |
New changeset 877ea88934a5164be4d9f15207694fad4173d87d by Victor Stinner in branch 'master': bpo-38644: Add Py_EnterRecursiveCall() to python3.def (GH-18399) https://github.com/python/cpython/commit/877ea88934a5164be4d9f15207694fad4173d87d |
|||
| msg361559 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-02-07 10:24 | |
> One further step would be to change the VECTORCALL/FASTCALL calling convention to pass tstate. My first strong motivation is to get None singleton from tstate. It's now being discussed in bpo-39511: "[subinterpreters] Per-interpreter singletons (None, True, False, etc.)". |
|||
| msg361825 - (view) | Author: Petr Viktorin (petr.viktorin) * | Date: 2020-02-11 16:50 | |
New changeset f3fda374685dffa31ebda9e681e00ef7032b8a1d by Victor Stinner in branch 'master': bpo-38644: Rephrase What's New entry (GH-18461) https://github.com/python/cpython/commit/f3fda374685dffa31ebda9e681e00ef7032b8a1d |
|||
| msg365104 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-03-26 17:57 | |
New changeset 08faf0016e1ee590c78f64ddb244767c7801866a by Victor Stinner in branch 'master': bpo-38644: Add _PySys_Audit() which takes tstate (GH-19180) https://github.com/python/cpython/commit/08faf0016e1ee590c78f64ddb244767c7801866a |
|||
| msg365112 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-03-26 21:28 | |
New changeset 728189884e0e128c4ffc57b785b04584d57a90c0 by Victor Stinner in branch 'master': bpo-38644: Pass tstate explicitly in signalmodule.c (GH-19184) https://github.com/python/cpython/commit/728189884e0e128c4ffc57b785b04584d57a90c0 |
|||
| msg365113 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-03-26 21:46 | |
New changeset 71a3522ef85df06a3acc718107360e37e4116a15 by Victor Stinner in branch 'master': bpo-38644: Make tstate more explicit inside pystate.c (GH-19182) https://github.com/python/cpython/commit/71a3522ef85df06a3acc718107360e37e4116a15 |
|||
| msg365152 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-03-27 14:12 | |
New changeset 1c1e68cf3e3a2a19a0edca9a105273e11ddddc6e by Victor Stinner in branch 'master': bpo-38644: Use _PySys_Audit(): pass tstate explicitly (GH-19183) https://github.com/python/cpython/commit/1c1e68cf3e3a2a19a0edca9a105273e11ddddc6e |
|||
| msg401213 - (view) | Author: Raymond Hettinger (rhettinger) * | Date: 2021-09-07 06:19 | |
This adds cost to our most critical code paths. For example, type_call() will now be slower for every single object instantiation. |
|||
| msg401225 - (view) | Author: STINNER Victor (vstinner) * | Date: 2021-09-07 10:32 | |
Raymond: > This adds cost to our most critical code paths. For example, type_call() will now be slower for every single object instantiation. This issue is now closed. Please open a new issue if you consider that the code should be modified. It would also help to have a benchmark if it's a performance regression ;-) |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022-04-11 14:59:22 | admin | set | github: 82825 |
| 2021-09-07 10:32:41 | vstinner | set | messages: + msg401225 |
| 2021-09-07 06:19:33 | rhettinger | set | nosy:
+ rhettinger messages: + msg401213 |
| 2020-04-14 00:37:59 | vstinner | set | status: open -> closed resolution: fixed stage: patch review -> resolved |
| 2020-03-27 14:12:10 | vstinner | set | messages: + msg365152 |
| 2020-03-26 21:46:21 | vstinner | set | messages: + msg365113 |
| 2020-03-26 21:28:19 | vstinner | set | messages: + msg365112 |
| 2020-03-26 19:12:02 | vstinner | set | pull_requests: + pull_request18543 |
| 2020-03-26 18:20:25 | vstinner | set | pull_requests: + pull_request18542 |
| 2020-03-26 18:16:47 | vstinner | set | pull_requests: + pull_request18541 |
| 2020-03-26 17:57:36 | vstinner | set | messages: + msg365104 |
| 2020-03-26 17:17:50 | vstinner | set | pull_requests: + pull_request18540 |
| 2020-03-17 01:06:13 | vstinner | set | pull_requests: + pull_request18385 |
| 2020-02-11 16:50:14 | petr.viktorin | set | nosy:
+ petr.viktorin messages: + msg361825 |
| 2020-02-11 13:10:51 | vstinner | set | pull_requests: + pull_request17835 |
| 2020-02-07 10:24:48 | vstinner | set | messages: + msg361559 |
| 2020-02-07 10:23:00 | vstinner | set | messages: + msg361558 |
| 2020-02-07 10:01:18 | vstinner | set | pull_requests: + pull_request17775 |
| 2020-01-28 02:37:49 | vstinner | set | messages: + msg360835 |
| 2020-01-27 22:54:51 | vstinner | set | pull_requests: + pull_request17602 |
| 2020-01-13 17:47:06 | vstinner | set | messages: + msg359920 |
| 2020-01-13 16:26:58 | vstinner | set | pull_requests: + pull_request17393 |
| 2020-01-13 16:09:54 | vstinner | set | messages: + msg359916 |
| 2019-11-18 16:37:50 | vstinner | set | messages: + msg356878 |
| 2019-11-16 00:04:47 | vstinner | set | messages: + msg356734 |
| 2019-11-16 00:03:25 | vstinner | set | messages: + msg356732 |
| 2019-11-15 23:45:02 | vstinner | set | pull_requests: + pull_request16692 |
| 2019-11-15 23:33:32 | vstinner | set | pull_requests: + pull_request16690 |
| 2019-11-14 12:36:28 | vstinner | set | messages: + msg356601 |
| 2019-11-14 11:20:51 | vstinner | set | messages: + msg356597 |
| 2019-11-12 22:23:13 | vstinner | set | messages: + msg356495 |
| 2019-11-12 20:41:16 | vstinner | set | pull_requests: + pull_request16641 |
| 2019-11-08 09:48:10 | vstinner | set | pull_requests: + pull_request16598 |
| 2019-11-08 09:05:25 | vstinner | set | messages: + msg356234 |
| 2019-11-05 00:46:04 | vstinner | set | pull_requests: + pull_request16566 |
| 2019-11-05 00:22:14 | vstinner | set | messages: + msg355987 |
| 2019-11-04 23:52:50 | vstinner | set | pull_requests: + pull_request16564 |
| 2019-11-04 23:51:26 | vstinner | set | messages: + msg355984 |
| 2019-11-04 18:48:37 | vstinner | set | messages: + msg355974 |
| 2019-11-04 17:11:41 | vstinner | set | pull_requests: + pull_request16559 |
| 2019-10-30 15:00:20 | vstinner | set | messages: + msg355717 |
| 2019-10-30 14:46:20 | vstinner | set | keywords:
+ patch stage: patch review pull_requests: + pull_request16524 |
| 2019-10-30 14:31:24 | vstinner | create | |