Artwork

Treść dostarczona przez Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa. Cała zawartość podcastów, w tym odcinki, grafika i opisy podcastów, jest przesyłana i udostępniana bezpośrednio przez Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa lub jego partnera na platformie podcastów. Jeśli uważasz, że ktoś wykorzystuje Twoje dzieło chronione prawem autorskim bez Twojej zgody, możesz postępować zgodnie z procedurą opisaną tutaj https://pl.player.fm/legal.
Player FM - aplikacja do podcastów
Przejdź do trybu offline z Player FM !

Episode 2 - PEP 703: Removing the GIL

1:14:39
 
Udostępnij
 

Manage episode 381379579 series 3522009
Treść dostarczona przez Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa. Cała zawartość podcastów, w tym odcinki, grafika i opisy podcastów, jest przesyłana i udostępniana bezpośrednio przez Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa lub jego partnera na platformie podcastów. Jeśli uważasz, że ktoś wykorzystuje Twoje dzieło chronione prawem autorskim bez Twojej zgody, możesz postępować zgodnie z procedurą opisaną tutaj https://pl.player.fm/legal.

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

  continue reading

15 odcinków

Artwork

Episode 2 - PEP 703: Removing the GIL

core.py

15 subscribers

published

iconUdostępnij
 
Manage episode 381379579 series 3522009
Treść dostarczona przez Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa. Cała zawartość podcastów, w tym odcinki, grafika i opisy podcastów, jest przesyłana i udostępniana bezpośrednio przez Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa lub jego partnera na platformie podcastów. Jeśli uważasz, że ktoś wykorzystuje Twoje dzieło chronione prawem autorskim bez Twojej zgody, możesz postępować zgodnie z procedurą opisaną tutaj https://pl.player.fm/legal.

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

  continue reading

15 odcinków

所有剧集

×
 
Loading …

Zapraszamy w Player FM

Odtwarzacz FM skanuje sieć w poszukiwaniu wysokiej jakości podcastów, abyś mógł się nią cieszyć już teraz. To najlepsza aplikacja do podcastów, działająca na Androidzie, iPhonie i Internecie. Zarejestruj się, aby zsynchronizować subskrypcje na różnych urządzeniach.

 

Skrócona instrukcja obsługi