Python 3.15 beta 4已发布,JIT首次跑出有意义的性能提升。但"3-5倍加速"的说法靠谱吗?实测数据和路线图告诉你真相。
最近不少文章称"Python 3.15 JIT性能提升3-5倍",这个说法严重夸大。
来自CPython核心开发者Ken Jin的实测数据:
| 12-13% | ||
| 8-9% | ||
| 5-6% |
"3-5倍"可能是对特定热点代码路径的极端优化案例,绝非pyperformance基准测试的整体表现。Ken Jin在3月博文中的原话是:"Python 3.15的JIT终于回到正轨"——关键词是"回到正轨",而非"起飞"。
回看历史:3.13首次引入实验性JIT时,在某些场景下甚至比解释器更慢。3.15是首个跑出正向收益的版本,8-13%的提升已经是里程碑式的进步。
3.15的JIT采用copy-and-patch编译策略,在运行时将字节码翻译为原生机器码。相比3.13的实验版,优化器和后端代码生成都有重大改进。
目前JIT仍为实验性功能,需要编译时通过--enable-experimental-jit选项启用,尚未默认开启。
这是3.15中对日常开发影响最大的特性。
传统import语句在模块加载时立即执行,大型项目启动时可能导入数百个模块,耗时可观。Lazy Import让导入延迟到首次实际使用时才执行,启动速度大幅提升。
实战场景:CLI工具、Web服务冷启动、Jupyter Notebook初始化——这些对启动时间敏感的场景收益最大。
frozendict正式成为内置类型,不可变字典。
MappingProxyType更高效适合做配置常量、缓存键、函数默认参数等场景,告别dict.copy()防篡改的老套路。
Tachyon是3.15新增的超低开销解释器性能分析模式。传统cProfile在复杂项目中可能带来2-5倍的性能损耗,Tachyon的目标是生产环境可用,几乎不影响运行性能。
3.13引入的实验性no-GIL模式在3.15中更趋稳定,但仍非默认启用。配套的ABI兼容性和生态适配仍在推进。
PEP 836为CPython JIT制定了清晰的时间表:
第1年(3.15-3.16)
Tier 1平台实现4-12%几何平均加速;满足兼容性、工具链标准
第2年(3.17)
自由线程模式下至少20%加速;决定是否默认启用JIT
持续(3.18+)
从实验性功能转为正式支持功能
核心结论:真正的性能质变要到3.17(预计2028年前后),目标20%+的几何平均提升。
MappingProxyType和手动防篡改方案3.11(2022) — 比上一代快10-60%,Faster CPython项目初见成效
3.12(2023) — 特化自适应解释器,继续小幅提速
3.13(2024) — 引入实验性JIT + 实验性自由线程,性能提升有限
3.14(2025) — JIT暂停又恢复,社区化组织接管开发
3.15(2026.10预计) — JIT首次实现8-13%正向提升 + Lazy Import + frozendict
Python的性能进化是一条渐进式路线:每个版本提升一点,积少成多。从3.11到3.15的累计提升已经很可观,但离"质变"还有距离。
一句话总结:Python 3.15的JIT是重要里程碑,但现阶段提升8-13%而非3-5倍。真正质变要等3.17的20%+目标。当前更实用的是Lazy Import加速启动和frozendict优化线程安全。

长按或扫描下方二维码,免费获取 Python公开课和大佬打包整理的几百G的学习资料,内容包含但不限于Python电子书、教程、项目接单、源码等等
▲扫描二维码-免费领取
推荐阅读
点击 阅读原文了解更多