
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
5
1717 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
4,196 Listeners
288 Listeners
585 Listeners
70 Listeners
284 Listeners
215 Listeners
143 Listeners
4,131 Listeners
75 Listeners
62 Listeners
140 Listeners
456 Listeners
5,505 Listeners
73 Listeners
54 Listeners