Hasty Briefsbeta

双语

PEP 836: JIT Go Brrr: The Path to a Supported JIT Compiler for CPython

7 days ago
  • #Performance-Improvement
  • #Development-Roadmap
  • #CPython-JIT
  • 一份关于在CPython中正式支持JIT的路线图的PEP草案已拟订,以回应指导委员会对JIT开发的暂停决定。
  • JIT必须满足性能、兼容性、工具支持、平台适配、分发机制、安全性和维护性目标,并设定了一个几何平均性能提升目标:在Python 3.17的首个测试版中,JIT结合无锁线程构建的pyperformance基准测试需实现20%的提升。
  • 讨论内容包括:若方法前端方案失败可能退而采用追踪记录器;吸引专家参与或内部自建团队等选项;以及对实验可能拖慢开发进程的担忧。
  • 与会者提出了关于C-API在JIT性能中的作用、类型提示的有限效用,以及从现有JIT项目(如Numba)中汲取经验的问题。
  • JIT的内存消耗目标尚未明确界定,但已承认需要设定上限。
  • 针对是否支持32位Windows系统存在争议,有观点因其使用率下降建议降低优先级。
  • 该PEP建议将JIT优化器与静态单赋值形式特性对齐,这可能影响字节码变更,但PEP主要目标认为此事项超出其当前范围。