Artwork

Contenu fourni par Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa. Tout le contenu du podcast, y compris les épisodes, les graphiques et les descriptions de podcast, est téléchargé et fourni directement par Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa ou son partenaire de plateforme de podcast. Si vous pensez que quelqu'un utilise votre œuvre protégée sans votre autorisation, vous pouvez suivre le processus décrit ici https://fr.player.fm/legal.
Player FM - Application Podcast
Mettez-vous hors ligne avec l'application Player FM !

Episode 2 - PEP 703: Removing the GIL

1:14:39
 
Partager
 

Manage episode 381379579 series 3522009
Contenu fourni par Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa. Tout le contenu du podcast, y compris les épisodes, les graphiques et les descriptions de podcast, est téléchargé et fourni directement par Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa ou son partenaire de plateforme de podcast. Si vous pensez que quelqu'un utilise votre œuvre protégée sans votre autorisation, vous pouvez suivre le processus décrit ici https://fr.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 episodes

Artwork

Episode 2 - PEP 703: Removing the GIL

core.py

15 subscribers

published

iconPartager
 
Manage episode 381379579 series 3522009
Contenu fourni par Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa. Tout le contenu du podcast, y compris les épisodes, les graphiques et les descriptions de podcast, est téléchargé et fourni directement par Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa ou son partenaire de plateforme de podcast. Si vous pensez que quelqu'un utilise votre œuvre protégée sans votre autorisation, vous pouvez suivre le processus décrit ici https://fr.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 episodes

Toate episoadele

×
 
Loading …

Bienvenue sur Lecteur FM!

Lecteur FM recherche sur Internet des podcasts de haute qualité que vous pourrez apprécier dès maintenant. C'est la meilleure application de podcast et fonctionne sur Android, iPhone et le Web. Inscrivez-vous pour synchroniser les abonnements sur tous les appareils.

 

Guide de référence rapide