
2026年10月19日,PEP 836《JIT Go Brrr: The Path to a Supported JIT Compiler for CPython》正式撤回。這項提議由 Savannah Ostrowski、Ken Jin 與 Brandt Bucher 遞交,原本為 CPython 的實驗性即時編譯器(JIT)訂出一條成為正式支援功能的路徑;撤回後,Python 指導委員會六月設立的期限正式生效,JIT 程式碼需由主線分支移除。[1][2]
指導委員會設立的界線
2026年6月5日,指導委員會成員 Pablo Galindo Salgado 在官方論壇發表公告,肯定 JIT 團隊多年的技術工作,同時指出 JIT 已在主線存在多年、經過多次架構重疊,卻一直以非正式身分存在,現在是重新檢視其地位的時候。[2]
委員會要求提議人在六個月內提交標準跟蹤(Standards Track)PEP,交代長期維護承諾、相容性保證、效能評估方法、除錯與效能分析工具支援、平台範圍與發布版打包安排;在 PEP 獲接納之前,主線不得合併新 JIT 功能或最佳化,只準修正錯誤與安全問題;期限將屆卻無獲接納提議,JIT 必須離開主線。[2]
提議提出的路徑圖
PEP 836 提出約兩年半、分三階段的安排。首階段以 Python 3.16 首個 beta 為終點,把前端由追蹤記錄改為以方法為基,令維護與教學更容易,並讓 JIT 相容於 free-threading,同時要求 JIT 加 GIL 相對 GIL 解釋器不低於百分之五提升。次階段以 3.17 首個 beta 為終點,要求在 pyperformance 上、JIT 配合 free-threading 相對單純 free-threading 解釋器達到至少兩成幾平均提升,明言這是留在主線的最低門檻。最後階段以 3.17 首個候選版為終點,用熱門 PyPI 套件與真實工作負載做相容性檢查。[1]
效能數據與現實差距
PEP 附錄列出2026年6月16日至27日的實測結果:M3 Pro(macOS)平均加速一成二六,AmpereOne(Linux aarch64)百分之七九三,i5-8400(Linux x86_64)百分之六九九,Ryzen 5 3600X(Windows)百分之四九七,整體落在百分之四至十二之間。對照兩成門檻,現時數據仍有距離;JIT 自 Python 3.13 起已在主線,但預設關閉,須以環境變數 PYTHON_JIT=1 啟用,短期內不會改變已發布版本的預設行為。[1]
對用戶與發布版的影響
一般應用開發者不受語言語意或標準庫影響,手上的 3.13、3.14、3.15 不會因這失去功能。需要留意的是打包套件:部分發布版與第三方建置以 LLVM 工具鏈編譯 JIT 版本,主線移除 JIT 後,這些選項也會消失。[1]
替代路徑仍然存在。PEP 836 承認 PyPy 與 GraalPy 在某些程式上可帶來更大加速,而透過 PEP 523 禿認證 API 在主線以外支撐 JIT 的方塊亦值得遵定。下一個觀察節點是 Python 3.16 首個 alpha:JIT 屆時是否已完全清走,將決定社區能否接手。[1]
參考資料
[1] PEP 836 – JIT Go Brrr: The Path to a Supported JIT Compiler for CPython(2026年10月19日撤回)
[2] An announcement from the Steering Council regarding the JIT project(2026年6月5日)