diff --git a/Doc/whatsnew/3.14.rst b/Doc/whatsnew/3.14.rst index 9a25f27ca57257..d20b85345395bf 100644 --- a/Doc/whatsnew/3.14.rst +++ b/Doc/whatsnew/3.14.rst @@ -69,6 +69,7 @@ Summary -- release highlights * :ref:`PEP 761: Discontinuation of PGP signatures ` * :ref:`A new type of interpreter ` * :ref:`PEP 765: Disallow return/break/continue that exit a finally block ` +* :ref:`Free-threaded CPython ` Incompatible changes @@ -312,6 +313,24 @@ For further information on how to build Python, see (Contributed by Ken Jin in :gh:`128563`, with ideas on how to implement this in CPython by Mark Shannon, Garrett Gu, Haoran Xu, and Josh Haberman.) +.. _whatsnew314-free-threaded-cpython: + +Free-threaded CPython +--------------------- + +Free-threaded CPython now supports :pep:`659` which is known +as the specializing adaptive interpreter. The execution mechanism is almost same +as the default build, however in a free-threaded CPython build, each thread +maintains a thread-local copy of specialized bytecode. + +With this change, the free-threaded CPython build achieves better performance, +and is only 10-15% slower than the default build. + +This work was done by many contributors, Matt Page, Neil Schemenauer, +Sam Gross, Thomas Wouters, Donghee Na, Kirill Podoprigora and Ken Jin. +Meta also provided significant engineering resources for performance benchmarking and +design of per thread specialized bytecode mechanisms. + Other language changes ======================