高性能Python解释器PyPy支持AArch64架构
现在 PyPy 一共支持 6 种架构,分别是 x86(32 和 64 位)、ARM(32 和 64 位)、PPC64 与 s390x。
PyPy 是一个兼容性强大的 Python 解释器,几乎是 CPython 2.7 与 3.6 的直接替代品。由于其集成的 JIT 编译器,速度很快,为了展示新 PyPy 的性能,此次官方公告中也进行了一次速度测试,如上图所示,在一组基准测试中比较了 PyPy 与 CPython 的性能,同时对比 x86_64 架构上 PyPy 的结果。
图中显示了 AArch64(hg id 2417f925ce94)上与 CPython(2.7.15)相比 PyPy 的速度提高,以及 x86_64 Linux 笔记本电脑上最新版本 PyPy 7.1.1 和 CPython 2.7.16 相比的速度。结果显示在大多数基准测试中,AArch64 上实现的加速与 x86_64 笔记本电脑上实现的加速效果相当。AArch64 上的 PyPy 相比 CPython 有 0.6x 到 44.9x 的加速,x86_64 上是 0.6x 到 58.9x。
需要注意的是,这里显示的结果是在 AWS 的 Graviton A1 机器上测量的,Graviton A1 是虚拟机,因此不适合进行基准测试。此外,此基准套件并不能够反映平均水平。
有三种结果:运行速度差不多、运行速度提高 2 倍,以及速度为 x86_64 的 0.5 倍。
官方表示该版本还有许多改进的空间,AArch64 带有大量的 CPU 寄存器,PyPy 后端是用 x86(32 位变体)编写的,它的寄存器数量非常少。官方认为可以在机器码方面进行改进,这可能对 AArch64 的影响大于对 x86_64 的影响。此外 AArch64 后端还有许多缺少的功能,这些功能目前使用昂贵的函数调用实现,而不是内联原生指令,可以进行改进。
详情请查看「阅读原文」。
开源中国征稿啦!
开源中国 www.oschina.net 是目前备受关注、具有强大影响力的开源技术社区,拥有超过 400 万的开源技术精英。我们传播开源的理念,推广开源项目,为 IT 开发者提供一个发现、使用、并交流开源技术的平台。
现在我们开始对外征稿啦!如果你有优秀的技术文章想要分享,热点的行业资讯需要报道等等,欢迎联系开源中国进行投稿。投稿详情及联系方式请参见:我要投稿
- Python解释器PyPy JIT开始支持Aarch64架构
- 支持百亿数据场景,海量高性能列式数据库HiStore技术架构解析
- python解释器实现及其嵌入式应用:实现语法支持
- 用python做自动化测试--实现高性能测试工具(3)-- 优化系统架构
- python解释器(pypy,cpython,ironpython,jpython)
- 高性能数据序列化库,可序列化为binary,也可序列化为json,支持C++ java python php objectc 语言,兼容json数据格试,可以互相转换,跨语言交换数据,网络传输,远程调
- 项目实战_Python.编写一个高性能可扩展支持自定义的插件式监控系统? 推荐
- Python编写一个高性能可扩展支持自定义的插件式监控系统?
- 用python做自动化测试--实现高性能测试工具(4) --系统架构
- linux下安装vim8.0,支持python、perl、lua等解释器
- Python的各种解释器实现CPython | PyPy | Jython | IronPython等
- 自定义python startup脚本使交互解释器支持tab和删除键
- 高性能服务器架构思路
- werkzeug实现简单Python web框架(4):添加orm支持
- 使用 Python 编写虚拟机解释器
- vim支持+python和+python3切换
- Centos上python解释器按上下键或退格键出现乱码解决和tab补全
- linux中安装python交互式解释器ipython
- NopCommerce源码架构详解--初识高性能的开源商城系统cms
- 让FLAnimatedImage支持SDWebImage的修改 -- Flipboard开源高性能动画GIF引擎(源码)