Python 的实验性 JIT 走到尽头:PEP 836 被撤回
来源:lwn.net — 2026-10-26
📋 概述
LWN 复盘了 CPython 实验性 JIT 的死亡过程。这个 JIT 由 Brandt Bucher 在 2024 年早期为 3.13 加入,当初只走了一个 informational 的 PEP 744,没有经过正式的共识流程。今年 6 月,Python 指导委员会要求维护者提交一份标准轨道 PEP,说清 JIT 作为受支持特性所承诺的保证、维护投入以及对下游发行版的影响,并给了六个月期限,否则把代码从主分支移除。Bucher、Ostrowski 与 Ken Jin 起草了 PEP 836「JIT Go Brrr」,委员会在 9 月回复说问题基本都答了,但支持计划与性能判据不够具体,还列出十项需要展开或明确否决的议题,包括平台一致性、内存影响、安全审查,以及把兼容性回归审查从 3.17 候选版(预计 2028 年 8 月)大幅提前。10 月 19 日,Ostrowski 宣布撤回 PEP,理由是团队没有带宽把当前版本推进下去。
🔑 核心要点
- 程序上的原罪:JIT 在 2024 年进入 3.13 时只走了 informational 的 PEP 744,并未取得正式共识
- 委员会的诉求很具体:要一份标准轨道 PEP 说清保证、维护承诺与对下游发行版的影响,逾期则从主分支移除代码
- 对实验留在主分支的担忧是缺少统一设计:行为与 API 表面随实验变动,核心开发者、打包者和用户都无从预期
- 委员会列出十项待答议题,涵盖内存影响、安全审查、平台一致性,并认为 PEP 对用户可见差异「过于乐观」
- 时间线被判太慢:兼容性回归审查原本计划对齐 3.17 候选版(2028 年 8 月),委员会要求改为尽快持续的流程
- 结局是撤回而非否决:作者们仍相信技术方向(含 free-threaded 支持与基于方法的前端),只是没有带宽继续推
💡 金句
指导委员会为这种规模的提案设定了理应很高的门槛,而我们觉得自己没有足够的人力带宽,把当前版本继续推下去。
👍 0
👎 0
← 返回 Lobsters 首页