Get $100 free credit - Build your next big idea @

Can subinterpreters free us from Python's GIL?

Episode #225, published Mon, Aug 12, 2019, recorded Fri, Aug 2, 2019.

This episode is carbon neutral.
Have you heard that Python is not good for writing concurrent asynchronous code? This is generally a misconception. But there is one class of parallel computing that Python is not good at: CPU bound work running the Python layer.

What's the main problem? It's Python's GIL or Global Interpreter Lock of course. Yet, the fix for this restriction may have been hiding inside CPython since version 1.5: subinterpreters.

Join me to talk about PEP 554 with core developer Eric Snow.

Links from the show

Eric on Twitter: @ericsnowcrntly
Eric's "Multi-core Python" project:
Blog post (2016):
Dave Beazley's talk on concurrency (performance):
PEP 554 ("Multiple Interpreters in the Stdlib"):
Original notes for PEP 554:
Python benchmarks:
Slides from Language Summit 2018:
Slides from Language Summit 2019:

Talk at PyCon US 2019, "to GIL or not to GIL: the Future of Multi-Core (C)Python"

Want to go deeper? Check out our courses

Eric Snow
Eric Snow
Episode sponsored by
Ads served ethically
Click to show comments

Individuals can support this podcast directly via Patreon. Corporate sponsorship opportunities available here.
Become a friend of the show
Stay in the know and get a chance to win our contests.
See our privacy statement about email communications.