每日一博 | 源码级解读让 CPython 性能提升 5 倍的提案
作者:修玉同(音弦) 在 2021 年早些时候,Python 作者 Guido van Rossum 被微软返聘继续进行 CPython 相关工作,他们提出了一个 faster-python 计划,计划在 4 年内将 CPython 的性能提升 5 倍,整个项目被开放在 GitHub 的 faster-cpython Group,通过 Activity 可见该项目的一部分 ideas 已经有了相应的代码实现和验证。 本文将就该项目中的一个重要提案 PEP 659 进行解读和源码分析,并从中学习在 bytecode level 进行虚拟机性能优化的思路和手段,希望能对大家有所启发。 提案解读 PEP 659 创建于 2021 年 4 月,全称为 Specializing Adaptive Interpreter,这里有两个关键词:Specializing 和 Adaptive,这里可以简单理解为对特定位置的代码进行适配(Adaptive),替换为特殊的代码(Specializing)从而提高特定位置操作的执行速度。比如通过观察发现某个查询 dict 的代码在多次执行过程中 dict 没有...


