
Sign up to save your podcasts
Or


We've read the PEP on making the Global Interpreter Lock optional so you don't have to.
Timestamps
(00:00:00) Intro
(00:00:50) CURRENT STATE OF THINGS
(00:00:58) Reference counting
(00:01:35) Garbage collection
(00:02:33) What is the Global Interpreter Lock?
(00:03:57) The GIL and threading
(00:07:24) Current ways around the GIL
(00:09:26) HISTORICAL ATTEMPTS TO REMOVE THE GIL
(00:09:46) 1999: Greg Stein's attempt at Python 1.6
(00:10:46) Jython doesn't have the GIL
(00:11:19) 2015: Larry Hastings' Gilectomy at Python 3.5
(00:12:34) Pablo says removing the GIL is actually very easy
(00:13:24) Łukasz is skeptical
(00:14:20) 2021: Sam Gross' nogil at Python 3.9
(00:18:22) 2023: PEP 703 for Python 3.13
(00:20:05) PEP 703 IN DETAIL
(00:20:20) Biased Reference Counting
(00:25:19) Other needed speedups: deferred refcounts, immortalization, GC
(00:28:41) mimalloc
(00:34:46) More GC changes
(00:38:20) eval breaker
(00:42:08) Thread-safe standard collections
(00:45:26) Fast paths vs. slow paths
(00:49:47) Reading freed memory with mimalloc is kinda okay?
(00:58:06) Specializations become harder to implement without the GIL
(01:01:27) PEP 703 terms of acceptance
(01:04:08) No free lunch
(01:09:25) It's now or never
(01:11:59) Outro
By Pablo Galindo and Łukasz Langa5
1818 ratings
We've read the PEP on making the Global Interpreter Lock optional so you don't have to.
Timestamps
(00:00:00) Intro
(00:00:50) CURRENT STATE OF THINGS
(00:00:58) Reference counting
(00:01:35) Garbage collection
(00:02:33) What is the Global Interpreter Lock?
(00:03:57) The GIL and threading
(00:07:24) Current ways around the GIL
(00:09:26) HISTORICAL ATTEMPTS TO REMOVE THE GIL
(00:09:46) 1999: Greg Stein's attempt at Python 1.6
(00:10:46) Jython doesn't have the GIL
(00:11:19) 2015: Larry Hastings' Gilectomy at Python 3.5
(00:12:34) Pablo says removing the GIL is actually very easy
(00:13:24) Łukasz is skeptical
(00:14:20) 2021: Sam Gross' nogil at Python 3.9
(00:18:22) 2023: PEP 703 for Python 3.13
(00:20:05) PEP 703 IN DETAIL
(00:20:20) Biased Reference Counting
(00:25:19) Other needed speedups: deferred refcounts, immortalization, GC
(00:28:41) mimalloc
(00:34:46) More GC changes
(00:38:20) eval breaker
(00:42:08) Thread-safe standard collections
(00:45:26) Fast paths vs. slow paths
(00:49:47) Reading freed memory with mimalloc is kinda okay?
(00:58:06) Specializations become harder to implement without the GIL
(01:01:27) PEP 703 terms of acceptance
(01:04:08) No free lunch
(01:09:25) It's now or never
(01:11:59) Outro

43,969 Listeners

4,375 Listeners

1,999 Listeners

623 Listeners

583 Listeners

213 Listeners

987 Listeners

8,059 Listeners

10,281 Listeners

8,007 Listeners

6,065 Listeners

139 Listeners

5,554 Listeners

16,340 Listeners

360 Listeners