Pyston v2.0 发布,解决 Python 慢速的救星
Pyston 自从 2017 年发布 0.6.1 版本后,已经淡出了人们的视线三年多了,导致现在新人都很少听过它的大名。
前两天(2020年10月28日)Pyston 在官方博客上(https://blog.pyston.org/)更新了文章,发布了最新的 v2 版本。
Pyston 是 Python 的基于 JIT 另一种实现,更快且高度兼容 CPython,和另一个被寄予厚望的 pypy 相比,Pyston 背后有 DropBox 的资金支持,发展会比 PyPy 更快。
速度更快
在基准测试中,Pyston v2 比 Python 3.8 快了 20%
下面是官方发布的性能测试结果:
兼容性
CPython 到现在能这么流行,从来都不是靠速度取胜。
Python 丰富的生态,大量好用的第三方库和应用,让大部分开发者允许它在速度上的不足。
有了 Pyston 后,速度和生态,二者就皆可兼得。
Pyston 和 PyPy的一个巨大区别就是它们的向后兼容性,由于Pyston是CPython的分支,因此我们认为它是当今可用的最兼容的替代Python实现之一。它支持与 CPython 相同的所有功能和C API。
如何看待
Pyston的发展一直都很快,实现了JIT编译的Python,而Dropbox则充分利用这一点来提高性能。根据Dropbox的标准,Pyston不仅运行速度更快,启动速度也更快。启动速度慢一直是所有动态语言JIT编译器的通病,但是Pyston通过使用内联缓存和不同的JIT技术克服了这个问题。
在这些方面PyPy也卓有成就,在最近的版本中,减少了脚本启动的时间,增加了对硬件类型和处理器的支持。多平台支持也是PyPy的一大卖点(通过Python的子集实现),让跨平台变得简单。PyPy在它的生态系统中还有很多有价值的工具:比如Python Debugger,可以向前和向后查看程序的状态。
从长期来看,Python用户有了更多的选择:PyPy注重未来的生态,Pyston则强调兼容性。
如何试用
从 github 仓库(https://github.com/pyston/pyston)来看,目前 Pyston v2.0 仅提供了 适用于 Ubuntu 18.04 和 20.04 x86_64 的 deb 包。
你可以通过如下命令去下载安装
# 下载
$ wget https://github.com/pyston/pyston/releases/download/v2.0/pyston_2.0_amd64_18.04.deb
# 安装
$ sudo apt install ./pyston_2.0*.deb
复制代码
然后你就可以使用 pyston (或者 pyston3) 和 pip-pyston install(或者 pip-pyston3 install) 命令来使用 pyston。
还在等什么,快去试用一下吧!!
作者:王一白
链接:https://juejin.im/post/6890376479398592519
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Pyston v2.0 发布,解决 Python 慢速的救星的更多相关文章
- Restful.Data v2.0发布,谢谢你们的支持和鼓励
v1.0发布后,承蒙各位博友们的热心关注,也给我不少意见和建议,在此我真诚的感谢 @冰麟轻武 等朋友,你们的支持和鼓励,是这个开源项目最大的推动力. v2.0在除了细枝末节外,在功能上主要做了一下更新 ...
- iBox v2.0 发布,Web化仿iOS7界面/交互的JavaScirpt库
iBox2 是一个仿 iOS 7 界面/交互的 JavaScirpt 库,它运行在 webkit 内核的移动浏览器之上,依赖 iScroll5,帮助开发者构建更接近 iOS 体验的 WebApp. 伴 ...
- kkfileview v2.0 发布,文件在线预览项目方案
kkfileview文件在线预览 此项目为文件文档在线预览项目解决方案,项目使用流行的spring boot搭建,易上手和部署,部署好后可以独立提供预览服务,使用http接口访问,不需要和应用集成,具 ...
- CodeManage 源代码管理器v2.0发布
下载地址 欢迎大家提出宝贵的意见和bug
- 【Beta】“北航社团帮”发布声明——小程序v2.0与网页端v1.0
目录 Beta版本新功能 小程序v2.0新功能 新功能列表 功能详情图 新功能动图展示 网页端v1.0功能 登录方式 社团信息的修改 新闻的录入和修改 活动的录入和修改 这一版修复的缺陷 Beta版本 ...
- 带你全面认识CMMI V2.0(一)
新发布的CMMI V2.0在方法论和方法上都提出了一些战略上的变化和改进.这些更新提供了新的要求.历史标准的演进以及以往实践的延续. CMMI V2.0和CMMI V1.3的变化 CMMIV2.0的定 ...
- CMMI V2.0丨如何通过CMMI真正在企业中的实施规模化敏捷开发
在过去的几年中,敏捷开发已经从一个利基概念(利基是指针对企业的优势细分出来的市场,这个市场不大,而且没有得到令人满意的服务.产品推进这个市场,有盈利的基础.)转变为全球许多大公司采用的标准实践. 通过 ...
- XXL-JOB v2.3.0 发布 | 易用性增强
转: XXL-JOB v2.3.0 发布 | 易用性增强 v2.3.0 Release Notes 1.[新增]调度过期策略:调度中心错过调度时间的补偿处理策略,包括:忽略.立即补偿触发一次等: 2. ...
- QzzmServer v2.0正式版发布
V2.1升级程序已发布,具体见下文 首先,感谢网友的热情的测评及反馈,现Qzzm ...
随机推荐
- JavaScript倒计时效果
实现思路: 输入的时间减去现在的时间就是剩余的时间,但是不能拿着时分秒相减,比如05分减去25分,结果会是负的. 可以用时间戳来做,用户输入时间总的毫秒数减去现在时间的总的毫秒数,得到的就是剩余时间的 ...
- Centos7安装Java8
centos7 用yum安装java8
- ORA-00001: unique constraint (string.string) violated 违反唯一约束条件(.)
ORA-00001: unique constraint (string.string) violated ORA-00001: 违反唯一约束条件(.) Cause: An UPDATE or I ...
- java高级&资深&专家面试题-行走江湖必备-持续更新ing
行走江湖必备一份面试题,这里给大家整理了一套.0面试官最喜欢问的问题或者出场率较高的面试题,助校招或者社招路上的你一臂之力! 首先我们需要明白一个事实,招聘的一个很关键的因素是在给自己找未来的同事,同 ...
- 增强for循环的用法
一.增强for循环 增强for循环的作用: 简化迭代器的书写格式.(注意:增强for循环的底层还是使用了迭代器遍历.)增强for循环的适用范围: 如果是实现了Iterable接口的对象或者是数组对象都 ...
- Oracle使用技巧
Edit/Undo Ctrl+ZEdit/Redo Shift+Ctrl+ZEdit/PL/SQL Beautifier Ctrl+W (自定义) Shift+Home 选择光标位置到行首 Shift ...
- linux学习(一)--启动文件bootsect.s
这是linux由BIOS加载后执行的第一段的启动程序代码,即文件 boot/bootsect.s 首先附图,简单介绍一下从开机加电到第一段linux代码执行的简要过程 1 .globl begte ...
- BeanCopier的使用
BeanCopier进行的是bean之间的copy,从一个类到另一个类,进行属性值的拷贝. 成功copy的条件: 1.属性的类型和名称都相同 2.目标类的setter缺少或缺失会导致拷贝失败,名称相同 ...
- 国内首个 .NET 5 框架 Fur 斩获 1000 stars,1.0.0-rc.final.20 发布
Fur 是 .NET 5 平台下企业应用开发最佳实践框架. 通往牛逼的路上,风景差得让人只想说脏话,但我在意的是远方. 啥环境 早在 1998 年微软公司对外发布 .NET/C# 平台的那 ...
- SpringCloud 与 SpringBoot版本问题
如果SpringBoot版本与SpringCloud版本不一致,SpringBoot应用启动会报错: 解决方案: 版本对应关系可以在 https://start.spring.io/info 上查看: ...