Python 3.15's JIT is now back on track ⭐⭐⭐⭐⭐

来源: fidget-spinner.github.io · Hacker News Best (226 points)
2026-03-18 探索发现

CPython JIT 开发者的深度反思,讲述如何克服困难让 Python 3.15 JIT 性能回归正轨。

关键亮点

  • 性能目标提前达成: macOS AArch64 比 interpreter 快 11-12%,x86_64 Linux 快 5-6%
  • 社区维护模式成功: 主要赞助商退出后,社区接管并成功推进项目
  • dual dispatch 机制: 创新的追踪解释器设计,只增加 1 条指令开销
  • 贡献者增长: 从 2 个活跃贡献者增加到 11 个 contributors
  • 代码覆盖率提升 50%: trace recording 让 JIT 能够追踪更多代码路径
  • bus factor 改善: 每个 JIT 阶段现在有 2 个活跃维护者

技术细节

原始 CPython JIT 在 3.13 和 3.14 版本经常比解释器慢。团队通过以下方式逆转:

  • 将解释器指令转换为易于优化的形式
  • Dual dispatch 机制替代双解释器表
  • 把复杂问题分解为可管理的小任务
  • 非常详细的贡献指南降低了入门门槛

标签

Python JIT CPython 开源 性能优化