首页 > 行业资讯 > “让 Python 快 5 倍”最新计划:优化解释器和内存管理

“让 Python 快 5 倍”最新计划:优化解释器和内存管理

时间:2023-07-09 来源: 浏览:

“让 Python 快 5 倍”最新计划:优化解释器和内存管理

点击关注 Python架构师
Python架构师

gh_1d7504e4dee1

回复:python,领取Python面试题。分享Python教程,Python架构师教程,Python爬虫,Python编程视频,Python脚本,Pycharm教程,Python微服务架构,Python分布式架构,Pycharm注册码。

收录于合集
#python 176
#python程序员 113
#python编程 154
#python技术 158
#Python爬虫 87
来源: OSC开源社区(ID: oschina2013)

2020 年秋,CPython 核心开发者 Mark Shannon 提出了关于 Python 的几个性能改进,这个提议被称为 “香农计划” (Shannon Plan)。

Shannon 随后创建了 Faster Cpython 项目,他希望在 4 年的时间里,通过多个版本的更新将 Python 的速度提升 5 倍。

点击领取Python面试题手册

Python从入门到进阶知识手册

不久之后微软正式加入 该计划,该公司支持包括 Mark Shannon、Guido van Rossum 在内的开发人员,致力于「Faster CPython」项目的研究。

近日,Mark Shannon 和 Michael Droettboom 介绍了面向 Python 3.13 的计划。

他们提出了三个可并行推进的工作:

  • 推出 Tier 2 优化器

  • 从 Python 代码中启用子解释器 (PEP 554)

  • 优化内存管理

Tier 2 优化器的目标是将花在解释器上的时间减少至少 50%,其工作计划大致如下:

  • 让 Tier 2 解释器运转起来

  • 生成 superblocks

  • 实现基本的 superblock 管理功能

至于从 Python 代码中启用子解释器,这项工作建立在 Python 3.12 中 per-interpreter GIL 的基础上,方便 Python 程序员利用 Python 代码子解释器中更好的并行性(无需编写 C 扩展)。

目前已有针对这项工作的草案:PEP 554。首先需要更新并推动早日获得批准,以便在必要时改变方向。

最后,关于优化内存管理方面。性能分析数据显示,内存管理和循环 GC 花费了相当多的时间。目前的计划是:

  • 通过改进数据结构来减少分配

  • 花费更少的时间进行循环 GC

至于官方 JIT,Shannon 曾表示实现 JIT 的第一步是实现一个跟踪解释器,但由于需要兼顾其他工作,引入 JIT 编译器的工作还有一段路要走,“ 最早可能要到 3.13 才能到达 ”。(其实 Shannon 一直对 CPython 是否真的需要引入 JIT 持怀疑态度)

有开发者“锐评”了该团队与另一个项目的内部斗争 —— 完全移除 CPython 解释器的 GIL(全局解释器锁)。

他认为 Faster Python 团队在这场斗争中在“政治”上处于更好的位置。

 
热门推荐
  • 开源的python ERP框架介绍

  • AI绘画-无影无踪的她:一个令人震惊的失踪案件揭开了惊人的真相

  • Django教程-什么是Django?

版权:如无特殊注明,文章转载自网络,侵权请联系cnmhg168#163.com删除!文件均为网友上传,仅供研究和学习使用,务必24小时内删除。
相关推荐