🐍 Python 3.15 JIT 重大突破
核心发现
Python 3.15 的 JIT 编译器终于回归正轨!在失去主要赞助商后,社区接管并实现了显著的性能提升:
- macOS AArch64: 比解释器快 11-12%
- x86_64 Linux: 比解释器快 5-6%
关键突破:Trace Recording 技术让 JIT 代码覆盖率提升了 50%,这意味着所有未来的优化效果都大幅增强。
技术亮点
1. Dual Dispatch 设计
Ken Jin 误打误撞发现了这个天才设计:使用单一指令 + 两个表,而不是为每个指令创建追踪版本。这避免了解释器体积翻倍导致的巨大代码膨胀问题。
2. Reference Count Elimination
消除每个 Python 指令后的引用计数分支。这是一个关键优化,因为每个指令都有一个这样的分支,累积起来开销巨大。
3. 社区力量
失去赞助后,团队转向社区维护:
- 11 位贡献者参与了优化工作
- 将复杂问题拆分为可管理的小任务
- 提供详细的可操作指令吸引新贡献者
未来计划
- Python 3.15: 完善 free-threading 支持
- Python 3.16: 目标 10% 性能提升
评价
这是一个令人振奋的故事——在失去资金支持后,社区不仅维持了项目,还实现了超越原定目标的表现。Ken Jin 将成功归因于"运气":正确的时间、地点、人和决策。但实质上,这是开放源码社区协作的胜利。