DiscoverTalk Python To Me - Python conversations for passionate developers#225 Can subinterpreters free us from Python's GIL?
#225 Can subinterpreters free us from Python's GIL?

#225 Can subinterpreters free us from Python's GIL?

Update: 2019-08-121
Share

Description

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: github.com/ericsnowcurrently/multi-core-python

Blog post (2016): ericsnowcurrently.blogspot.com

Dave Beazley's talk on concurrency (performance): dabeaz.com

PEP 554 ("Multiple Interpreters in the Stdlib"): python.org

CSP: wikipedia.org

Original notes for PEP 554: docs.google.com

CAPI: python.org

Python benchmarks: github.com

Slides from Language Summit 2018: docs.google.com

Slides from Language Summit 2019: docs.google.com



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

Video: youtube.com

Slides: docs.google.com


Sponsors



Ting

TopTal

Talk Python Training
Comments 
loading
00:00
00:00
1.0x

0.5x

0.8x

1.0x

1.25x

1.5x

2.0x

3.0x

#225 Can subinterpreters free us from Python's GIL?

#225 Can subinterpreters free us from Python's GIL?

Michael Kennedy (@mkennedy)