Python 3.14 中的新解释器提供了免费的速度提升

主要观点:Python 3.14 将获新类型解释器,可提升性能达 5%且无需更改现有代码,通过尾调用优化实现,不影响 C 扩展模块,升级到 Python 3.14 时预构建二进制文件会包含新解释器,从源码构建需特定编译标志,新解释器需支持尾调用优化的 C 编译器,多数 CPython 改进旨在提升性能且不牺牲向后兼容性,Python 3.14 首个测试版于 2025 年 5 月发布,中间 alpha 版本也应包含新解释器。
关键信息

  • 原报道新解释器使 CPython 提速达 15%不准确,因 Clang/LLVM 19 编译器 bug 致正常解释器变慢,CPython 3.14 新文档已修正。
  • 新解释器基于尾调用,非 Python 语言支持尾调用优化,是 C 编译器对 CPython 代码的优化。
  • 无需更改现有 Python 代码和重新编译 C 扩展模块,新解释器主要通过复用现有代码实现,无显著维护开销。
  • 对于预构建二进制文件,新解释器会在升级到 Python 3.14 时包含,从源码构建需特定标志。
  • 新解释器需支持尾调用优化的 C 编译器,目前 MSVC、Clang 19 及以上版本支持,预计 GCC 也将支持。
  • Python 比 Rust、C/C++运行慢,诸多努力旨在提升 Python 速度且不牺牲向后兼容性,多数优化聚焦于优化 CPython 解释器。
  • 这些优化累计起来可提供显著性能提升,新解释器提升性能的特点是无需用户额外成本,仅需升级解释器。
    重要细节
  • 3 月 10 日更新了关于新解释器提速的报道及 CPython 3.14 相关文档。
  • 提及 Python 运行慢的原因及提升速度的努力方向。
  • 介绍 Python 3.14 首个测试版发布时间及中间 alpha 版本情况。
阅读 8
0 条评论