As we approach the final release date for Python 3.13, I’ve seen an uptick in
discussion regarding 3.13’s introduction of an optional GIL. While removing the GIL has been a long time
coming for the average user (I’ve dreamt of this for nearly 20 years), there
have actually been two concurrent efforts to improve Python’s performance for
multithreading. The first is the optional GIL, specified in PEP 703, and
second is the introduction of a per-interpreter GIL, specified in PEP 684 and
introduced in Python 3.12.
The impression I had was thst subinterpreters could be launched from the python side. This writeup implies you need to write a C extension to make use of it.
Will have to do more research…