Sitemap

Member-only story

I Turned On Python 3.14’s JIT. It Was Faster on Zero of Ten Workloads.

One interpreter, one flag, ten pure-Python workloads — and the “it just needs to warm up” defence, tested.

9 min readSep 4, 2026

--

Press enter or click to view image in full size
One binary, one flag, ten workloads. The compiler that was supposed to speed things up mostly did not.

Almost every Python 3.14 JIT benchmark you can find compares one Python version against another. That measures the release, not the compiler. So I isolated it.

One interpreter: CPython 3.14.7. One variable: the PYTHON_JIT environment flag. Ten pure-Python workloads, each timed five times with the JIT off and on, interleaved.

At normal length the JIT was faster on zero of the ten. It was slower on seven, and the worst case ran 14% slower with the compiler enabled.

Then I ran every workload eight times longer, because a JIT is supposed to pay off once it has warmed up. The gap barely moved. That same worst case measured 0.86× at both lengths.

PYTHON_JIT=0 python bench.py    # 0.879 s
PYTHON_JIT=1 python bench.py # 1.000 s

That is the whole experiment. What follows is why it happens, the two workloads where the JIT did win, and how this squares with the “up to 30% faster” figure you have probably read.

What the Python 3.14 JIT actually does

--

--

Md Aminul Islam Sarker
Md Aminul Islam Sarker

Written by Md Aminul Islam Sarker

General Manager, Technology at Arogga. 16 years building software and the teams behind it. Writing about engineering leadership, platforms, and scale.