Python 之父立 Flag:明年要把 Python 速度提高 2 倍!

Hollis

共 2508字,需浏览 6分钟

 ·

2021-05-19 22:26

整理 | 郑丽媛
出品 | CSDN(ID:CSDNnews)

去年 11 月,退休失败的 Python 之父 Guido van Rossum 在推特上宣布,退休生活太无聊,从而加入了微软开发者部门。微软自然支持优秀人才的发展,所以赋予了 Guido van Rossum “自由选择项目”的权利,Guido van Rossum 也表示会致力于“确保更好地使用 Python”。

彼时,相信不少人认为 Guido van Rossum 的这句“更好”不过是官宣时的“常用说法”,可在上周的 PyCon 语言峰会上,Guido van Rossum 证明了他那句话不是说说而已:要让 Python 成为更快的语言,承诺在明年的 Python 3.11 中要将其速度提高 2 倍,以解决 Python 与 C++ 等其他编程语言相比在速度上的关键缺点


4 年把 Python 速度提升 5 倍

Guido van Rossum 在峰会上展示了一份提交至 GitHub 的 PDF,详细说明了他对于提高 Python 速度的决心与规划。(PDF 地址:https://github.com/faster-cpython/ideas/blob/main/FasterCPythonDark.pdf)

Guido van Rossum 介绍道,这个项目名为“Shannon Plan”,由微软资助的一个小团队负责,除了他还包括 Python Core 开发人员和微软高级软件工程师Eric Snow 以及 Semmle 的研究工程师 Mark Shannon,其中 Mark Shannon 主要开发用于代码安全性分析的产品,并且在去年十月就已经开始提出了这项给 Python 提速的计划,因此本次项目的命名也取自于他的名字“Shannon”。

Guido van Rossum 在演讲中所说,“Shannon Plan” 项目将全程在 GitHub 开源,并且将基于 Mark Shannon 此前有关 HotPy 和 HotPy 2(针对 CPython 的即时编译器)的开发经验,承诺将在 4 年内把 Python 速度提升 5 倍,即每年约提升 1.5 倍

以此为目标,Guido van Rossum 表示计划于明年发布的 Python 3.11 版本实现提升 2 倍的速度。他还大致解释了团队需要为此做出的努力:

  • 适应性、专门的字节码解释器(类似于内联缓存,但功能更全面)
  • 各种其他单独的优化:例如优化帧堆栈、调用更快、调整分配,还有“零开销”异常处理
不过 Guido van Rossum 也没有把话说的太死,因为提速实际上存在许多限制,包括不能破坏稳定的 ABI(应用程序二进制接口)兼容性、不能破坏 API 的兼容性、要保持代码兼容可维护以及在极端情况下不能降低速度等难题。
所以大概是为了避免意外,他补充道:“我们并不能确定我们肯定会达到 2 倍!只是乐观计划。”

微软持续助力 Python 发展
除了这个Shannon Plan,微软还资助了一支专门“负责解释语言的性能改进”的 Python 团队。其实不难看出,近年来微软一直都在深度拥抱开源,也很支持 Python 的发展。其中包括:发布免费的 Python 课程、通过 VS Code Python 扩展在 Windows 10 及以上版本均支持 Python。此外,微软自 2006 年起就成为了 Python 软件基金会(PSF)的正式赞助商,不说曾经,仅今年就已经提供了 15 万美元的赞助费。
微软 Python 与 AI 工具首席经理 Dan Taylor 对此曾表示:“作为提供给 PSF 15 万美元财务赞助中的一部分,我们将把资金集中到程序包工作小组当中,帮助他们进一步改善 PyPI 与程序包生态系统。”
不仅如此,微软内部目前也有 5 个为 CPython 开发做出贡献的核心开发人员,包括:Brett Cannon,Steve Dower,Guido van Rossum,Eric Snow 和 Barry Warsaw,他们全部都是 Python 核心开发者社区中的资深人士。
总体看来,不论是资金还是技术,微软对 Python 的支持可谓全面,或许这也促成了 Python 之父 Guido van Rossum 在退休后选择进入微软的部分原因。正如当初他在推特宣布加入微软的时候,最后提了一句“这里(微软)有很多开源”,微软对 Python 的助力、对开源的支持他都看得见。
因而在峰会的演讲中,Guido van Rossum 指出:我选择回到我的根源,这也是微软回馈 Python 的方式。
最后,对于 Python 之父提出的提速 2 倍,你有什么看法吗?欢迎评论区留言!

参考资料:

https://www.zdnet.com/article/python-programming-we-want-to-make-the-language-twice-as-fast-says-its-creator/

https://github.com/faster-cpython/ideas/blob/main/FasterCPythonDark.pdf

   


有道无术,术可成;有术无道,止于术

欢迎大家关注Java之道公众号


好文章,我在看❤️

浏览 30
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报