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 ...
随机推荐
- c#类(class)
类 类的定义是以关键字class开始的,后面跟类的名称,类的主题包含一个花括号里,下面是类定义的一般格式. <access specifier> class class_name { // ...
- RHSA-2017:2679-重要: 内核 安全更新(需要重启、存在EXP、代码执行)
[root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) 修复命令: 使用root账号登陆She ...
- 解决VMware无法共享ubuntu虚拟机文件
1.错误信息:无法更新运行时文件夹共享状态:在客户机操作系统内装载共享文件夹文件系统时出错 2.检查vmware tool是否正确安装 lsmod | grep vmhgfs modprobe vmh ...
- c++的一些习惯
1.显示转换:类型说明符(表达式),如a = int(z) 2.枚举类型enum:专门用来解决对数据的合法性检查问题,如一星期七天,如果用int/char等数据类型描述时,则需要对数据的合法性检查.声 ...
- Kubernetes K8S之存储ConfigMap详解
K8S之存储ConfigMap概述与说明,并详解常用ConfigMap示例 主机配置规划 服务器名称(hostname) 系统版本 配置 内网IP 外网IP(模拟) k8s-master CentOS ...
- 题解:POI2012 Salaries
题解:POI2012 Salaries Description The Byteotian Software Corporation (BSC) has \(n\) employees. In BSC ...
- DateDiff() 方法语法 T-SQL语法
表达式DateDiff(timeinterval,date1,date2 [, firstdayofweek [, firstweekofyear]]) 允许数据类型: timeinterval 表示 ...
- spring boot报错:Invalid bound statement (not found): com.
经检查发现mapper的namespace没写全导致的 正确应该写成这样就可以了:
- 《Graph-Based Reasoning over Heterogeneous External Knowledge for Commonsense Question Answering》论文整理
融合异构知识进行常识问答 论文标题 -- <Graph-Based Reasoning over Heterogeneous External Knowledge for Commonsense ...
- Linux运维学习第二周记
1 梨花淡白柳深青, 2 柳絮飞时花满城. 3 惆怅东栏一株雪, 4 人生看得几清明. 老牛望春满地绿! 第二周直接要起飞了! 仍然是最基础最基础的东西,但也是特别多,的别重要! 第二周学记 1.Li ...