[Python-Dev] PEP 554 v3 (new interpreters module)
Antoine Pitrou
solipsis at pitrou.net
Wed Oct 4 12:02:07 EDT 2017
More information about the Python-Dev mailing list
Wed Oct 4 12:02:07 EDT 2017
- Previous message (by thread): [Python-Dev] PEP 554 v3 (new interpreters module)
- Next message (by thread): [Python-Dev] PEP 554 v3 (new interpreters module)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Wed, 4 Oct 2017 17:50:33 +0200 Antoine Pitrou <solipsis at pitrou.net> wrote: > On Mon, 2 Oct 2017 21:31:30 -0400 > Eric Snow <ericsnowcurrently at gmail.com> wrote: > > > > > By contrast, if we allow an actual bytes object to be shared, then > > > either every INCREF or DECREF on that bytes object becomes a > > > synchronisation point, or else we end up needing some kind of > > > secondary per-interpreter refcount where the interpreter doesn't drop > > > its shared reference to the original object in its source interpreter > > > until the internal refcount in the borrowing interpreter drops to > > > zero. > > > > There shouldn't be a need to synchronize on INCREF. If both > > interpreters have at least 1 reference then either one adding a > > reference shouldn't be a problem. > > I'm not sure what Nick meant by "synchronization point", but at least > you certainly need INCREF and DECREF to be atomic, which is a departure > from today's Py_INCREF / Py_DECREF behaviour (and is significantly > slower, even on high-level benchmarks). To be clear, I'm writing this under the hypothesis of per-interpreter GILs. I'm not really interested in the per-process GIL case :-) Regards Antoine.
- Previous message (by thread): [Python-Dev] PEP 554 v3 (new interpreters module)
- Next message (by thread): [Python-Dev] PEP 554 v3 (new interpreters module)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-Dev mailing list