Annoncer
Ordinateurs

CPython : le build free-threaded n'est plus expérimental

Le mode sans GIL est désormais documenté comme officiellement pris en charge, avec une pénalité de performance ramenée à environ 5 à 10 %.

Le build free-threaded de CPython n'est plus présenté comme expérimental dans la documentation : il est désormais indiqué comme officiellement pris en charge, selon howtogeek.com. Ce build reste toutefois optionnel et distinct de l'interpréteur par défaut.

Le free-threading supprime la restriction imposée par le global interpreter lock (GIL), qui empêchait plus d'un thread d'exécuter du bytecode Python à la fois au sein d'un processus. L'interpréteur adaptatif spécialisé fonctionne maintenant aussi en mode free-threaded.

Le coût en performance sur du code mono-thread s'est réduit : il est aujourd'hui d'environ 5 à 10 % par rapport au build standard. Les utilisateurs doivent choisir explicitement ce mode en installant un build distinct, généralement étiqueté 3.14t. Des outils comme uv permettent de conserver côte à côte les builds standard et free-threaded.

Le compilateur JIT expérimental de Python 3.14 n'est pas encore disponible dans le build free-threaded, précise la même source.

Un changement préparé depuis 2024

Python intègre le GIL depuis ses débuts. Le free-threading a été proposé dans le PEP 703 et livré sous forme d'expérimentation avec Python 3.13 en octobre 2024 ; cette première version ralentissait sensiblement le code mono-thread et désactivait certaines optimisations internes pas encore sûres vis-à-vis des threads. Le PEP 779, qui fixe les critères de promotion du build free-threaded, a été accepté en juin 2025, et Python 3.14, sorti en octobre 2025, a rempli ces critères. L'équipe centrale décrit la situation actuelle comme la phase II d'un plan progressif.

En bref

Comment utiliser le build free-threaded de Python ?

Il faut installer un build distinct, généralement étiqueté 3.14t. Des outils comme uv permettent de garder les builds standard et free-threaded installés côte à côte.

Quel est le coût en performance du free-threading ?

La pénalité sur les performances mono-thread est d'environ 5 à 10 % par rapport au build standard.

Le JIT de Python 3.14 est-il disponible en free-threaded ?

Non, le compilateur JIT expérimental de Python 3.14 n'est pas encore disponible dans le build free-threaded.

Source