Faster CPython 3.12 Plan
<a href="https://github.com/faster-cpython/ideas/wiki/Python-3.12-Goals" rel="nofollow">https://github.com/faster-cpython/ideas/wiki/Python-3.12-Goa...</a> is interesting too.<p>> Python currently has a single global interpreter lock per process, which prevents multi-threaded parallelism. This work, described in PEP 684, is to make all global state thread safe and move to a global interpreter lock (GIL) per sub-interpreter. Additionally, PEP 554 will make it possible to create subinterpreters from Python (currently a C API-only feature), opening up true multi-threaded parallelism.<p>Very basic question: in a world where a Python program can spin up multiple subinterpreters, each of which can then execute on a separate CPU core (since they don't share a GIL), what will the best mechanisms be for passing data between those subinterpreters?