未加星标

谷歌推出 Python 性能加速方案

字体大小 | |
[开发(python) 所属分类 开发(python) | 发布者 店小二04 | 时间 2017 | 作者 红领巾 ] 0人收藏点击收藏
谷歌推出 python 性能加速方案

昨天来源:编程派

昨天,谷歌发布了一个 Python 性能加速方案 ―― Grumpy,可以将 Python 代码转译(transcompile)为 Go 源代码,然后再编译为 Native Code。目前在 Github 上已经获得了 3000+ star。

项目地址:https://github.com/google/grumpy

谷歌此举为社区又增添了一个 Python 性能加速方案。在众多编程语言中,Python 一直被诟病性能不高,背后的一个重要原因就是其标准实现 CPython 中的全局解释器锁(GIL)的存在,限制了并发和并行能力。一直以来,业界和社区都在寻找比较好的解决方案,目前知名的有 PyPy,微软的 Pyjion,和 Dropbox 的 Pyston等 JIT 实现。

Python 在谷歌的应用非常广泛,YouTube 的前端服务器和 YouTube API 就是采用 Python 语言编写。Python 之父曾经也在谷歌任职。

根据相关博文,这个项目的初衷就是为了提高 Python 代码的性能。Grumpy 既是一个源代码转译器,又提供了一个运行时。目前,该项目还处于实验阶段,而且不支持 Python 3。

负责开发该项目的工程师在 Hacker News 上回答网友质疑为什么只支持 Python 2时,指出『谷歌目前有着很大的 Python 2.7 代码库,因此是我们的侧重点』。还有人猜测,谷歌此举可能是为了应对 Python 2.7 到 2020 年时终止维护有关。与其将代码升级到 Python 3,谷歌更愿意未来将一部分 Python 代码转译为 Go 代码。

不过,这个猜测似乎并没有太多根据。谷歌工程师做出了如下回应,『(该项目的)目的是要继续用 Python 编码,转译后的代码没办法直接进行二次处理。当然对于性能关键的部分可能会用 Go 重写。未来采取的是混合模式。』

社区里还有通过引入 Rust、Lua、Julia 等语言加速 Python 的做法。

由于 Python 本身一直没能很好地解决 GIL 带来的性能限制,社区未来应该会继续出现其他的解决方案。目前应该有 JIT 即时编译和混合代码两种形式,而且得到了不少大公司的支持。

这个趋势对于以后学习 Python 来说也是值得注意的:未来肯定不是只要会 Python 就能满足工作需求,可能还需要学习 Go 等语言并研究如何结合使用。

本文开发(python)相关术语:python基础教程 python多线程 web开发工程师 软件开发工程师 软件开发流程

主题: Python谷歌LuaGit服务器Rust工程师JIT大公微软
分页:12
转载请注明
本文标题:谷歌推出 Python 性能加速方案
本站链接:http://www.codesec.net/view/520512.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 开发(python) | 评论(0) | 阅读(54)