Python Library DevelopmentPerformance EngineeringCode OptimizationOpen Source Development 2 min read

CPython Experimental JIT Compiler Removed From Main Branch

Following the withdrawal of PEP 836, the experimental JIT compiler has been removed from the CPython main branch due to unresolved maintenance and performance requirements.

PEP 836 was withdrawn on October 19, removing the experimental just-in-time compiler from CPython's main branch. You will see no change if you never built Python with the JIT enabled.

The Python Steering Council paused new JIT work on the main branch in June 2026. Resuming work required an accepted Python Enhancement Proposal covering maintenance, compatibility, success metrics, and a timeline. The JIT debuted as an experimental feature in Python 3.13, following PEP 744 in 2024. That document omitted long-term maintenance and integration details.

Created on July 2 for Python 3.16, PEP 836 was titled "JIT Go Brrr: The Path to a Supported JIT Compiler for CPython." The council stated the proposal lacked detail on support, performance evaluation, debugging, and profiling tools, and contained overly optimistic speedup expectations. Measured gains were real but small, appearing mainly in workloads like long-running tight loops.

Co-author Savannah Ostrowski noted that the authors lack the personal bandwidth to carry the current version forward, though they still believe in the technical direction, including free-threaded support and a method-based front end. Core developer Brett Cannon confirmed the work stopped in the CPython repository and will live elsewhere.

Python 3.15, released on October 9, still includes the JIT off by default. Its release notes report a 7-8 percent geometric mean improvement over the standard interpreter on x86-64 Linux, with results ranging from a roughly 15 percent slowdown to over a 100 percent speedup.

Other developers can continue the work outside the main tree in an alternative CPython build. Contributing it back requires meeting the standards set for PEP 836.