![](https://secure.gravatar.com/avatar/870d613430249e453343efc9667ef636.jpg?s=120&d=mm&r=g)
On 2020-06-10 04:43, Inada Naoki wrote:
On Tue, Jun 9, 2020 at 10:28 PM Petr Viktorin <encukou@gmail.com> wrote:
Relatively recently, there is an effort to expose interpreter creation & finalization from Python code, and also to allow communication between them (starting with something rudimentary, sharing buffers). There is also a push to explore making the GIL per-interpreter, which ties in to moving away from process-global state. Both are interesting ideas, but (like banishing global state) not the whole motivation for changes/additions.
Some changes for per interpreter GIL doesn't help sub interpreters so much. For example, isolating memory allocator including free list and constants between sub interpreter makes sub interpreter fatter. I assume Mark is talking about such changes.
Now Victor proposing move dict free list per interpreter state and the code looks good to me. This is a change for per interpreter GIL, but not for sub interpreters. https://github.com/python/cpython/pull/20645
Should we commit this change to the master branch? Or should we create another branch for such changes?
I think that most of all, the changes aimed at breaking up the GIL need a PEP, so that everyone knows what the changes are actually about -- and especially so that everyone knows the changes are happening. Note that neither PEP 554 (which itself isn't accepted yet) nor PEP 573 is related to breaking up the GIL.