导读:Python的创建者说可以在不破坏任何原有Python代码情况下,提高1-5倍性能,他能完成此操作吗?

30年前创建了流行编程语言Python的吉多·范·罗瑟姆(Guido van Rossum),最近又开始了他的雄心壮志——他要让Python语言速度提高一倍,从而解决Python与C ++等其它编程语言相比较的性能问题与缺点。 

 

范·罗瑟姆将在Python内核(CPython)中着手解决运行速度的问题。促使他解决问题的原因是,有其它Python运行环境如Pyston之类的JIT解释器开始出现且流行是动因之一。 

 

在本周举行的PyCon峰会上,范·罗瑟姆在微软的GitHub上发布了一份文档。该文档首次被The Register发现,文档上面详细说明了他要想Python成为更快编程语言的雄心,并承诺在Python 3.11中将其速度至少提高一倍。该版本将于明年的pre-alpha分支中正式发布。

 

这位Python语言的创造者在去年11月被开源友好的微软聘用,他在Dropbox任职期间帮助开发了400万行Python代码,这让他得以财务自由并成功退休 。 

 

后来,他说“退休后坐在家里很无聊”,于是申请了微软的职位。现在,他担任微软杰出工程师的“特权”职位。 

 

他在微软被赋予了“选择项目的自由”的权力。范·罗瑟姆在当时补充说,“他像回到祖国一样”。 

 

目前,微软已经通过各种方式将自己的力量放在Python,包括免费Python课程,这些课程可作为其Azure云AI服务的升级版本,VS Code Python扩展库支持以及Windows 10上的Python解释器。

 

微软同时也是Python的赞助商。自2006年起微软就是Python软件基金会(PSF)的赞助商,今年给了15万美元。

 

范·罗瑟姆表示,微软还资助了一个小型Python团队,负责让这个解释语言“性能得以改进”。 

 

在微软内部目前有五位为CPython开发贡献的核心开发人员,包括布雷特·坎农,史蒂夫·多尔,吉多·范·罗苏姆,埃里克·斯诺和巴里·华沙,他们都是Python核心开发人员社区的资深专家。 

 

这个团队在通过子解释器来提升Python中的多线程与性能。从Python 3.5 版本开始,Dower担任代码构建管理员,他一直是Windows系统中的CPython专家。华沙为Python编码指导委员会,他为Python安全响应小组和Python版本管理做出很多贡献。随着最近的Python软件供应链攻击日益受到关注,微软还将重点放在保护主程序包存储库PyPI(Python程序包索引)上。 

 

“作为给PSF 15万美元财务赞助的一部分,我们将把资金集中在包装工作小组上,以提高开发效进一步改善PyPI和软件包生态系统,”

 

微软Python首席经理丹·泰勒(Dan Taylor)这样说。  

 

“由于最近发现了安全漏洞,可信任的供应链对于我们和Python社区来说都是一个关键问题,我们很高兴为长期改进安全做出贡献。”

 

同时,范·罗苏姆指出,他和微软以及核心Python开发人员中所做的贡献是公开的,重点专注于CPython的增量更改。

 

他补充说:“我们也将负责维护和支持所有有关开放GitHub存储库跟踪器中的相关讨论。” 他还介绍了Python的解释器及其C语言应用程序二进制接口(ABI)和应用程序协议接口(API),这些阻碍了在浏览器中Python的创新。   

 

范·罗瑟姆承诺:“不会破坏稳定的ABI兼容性;不会破坏有限的API兼容性;不会破坏或减慢极端情况。” 他补充说:“还会保持Python代码可维护。” 

 

但是核心Python项目是否真的能够提供比当前版本的Python快一倍的速度?范·罗瑟姆的言语证据表明,他不想被追究这样一个雄心勃勃的项目的责任。 

 

他这样说道:“我们不确定是否会达到2倍!” ,“但是乐观而好奇”。 

 

尽管如此,范·罗瑟姆还提出了在Python 3.11之后要将速度提高五倍的想法,并指出“我们必须要有创造力”。 

 

范·罗瑟姆表示,即将进行的Python更改的主要受益者将是那些运行“ CPU密集型纯Python代码”的人以及使用Python的网站开发用户。 

 

但是对于已经用C语言编写的代码,例如NumPy和TensorFlow,I/O代码绑定,多线程代码以及算法效率低的代码,目前新版本暂时没有提供更多增益。 

 

作者:洛逸