写点什么

Python JIT 编译器 PyPy 4 引入 SMD 向量化并提升了性能

  • 2015-11-10
  • 本文字数:848 字

    阅读完需:约 3 分钟

PyPy 是 Python 的一个即时编译器,PyPy 4.0 是其最新发布的一个大版本,带来很多新的特性,诸如支持 SIMD 矢量、预热时间的改进、以及对 Numpy 的改进。PyPy声称要比Cpython 快6 倍以上。

PyPy 4 的 SIMD 矢量会在追踪代码时启用,而且会自动探测到可用的 SIMD 硬件从而提高常见的向量和矩阵操作。根据版本的公告,实时矢量相比前置(ahead-of-time)矢量更具有领先优势,因为其更加的容易探测到可能的矢量。

在性能方面,PyPy 的内部进行重构从而能够更有效的使用 guards 。它能够减少 20% 的内存消耗,而且改进了 unrolling,这样可以较少 20% 的预热时间。

PyPy 中的 Numpy 和 Python 的 NumPy 扩展是一个道理。Python 的 NumPy 曾经谈及,NumPy 是能够将使用PyPy 的开发者们纠回到Python 本身的一个理由。在PyPy 4.0,Numpy 带来了新的扩展支持,如ndarray 和数字的dtypes,这也就意味着Numpy 的功能接近完善。对于record、string、以及unicode dtypes 的支持都有所改进。

PyPy 4.0 目的是兼容 CPython2.7。对于缺少对 Python3 的支持被认为是人们采用PyPy 的一个限制因素。事实上,PyPy3 是兼容Python3.2.5 的,而且PyPy 团队正在尝试启动对Python3.4 的支持。

在迁移到PyPy 之前还应该考虑另外两个因素,一个是PyPy 还缺乏像C Python 那样的扩展如Pandas,SciPy 等的等量支持,这样的话,若是用户使用了这些扩展的话,PyPy 就不如C Python 效率更高;另外一个就是,PyPy 为其即时编译器带来的好处是对长时间运行的脚本支持,若是简单而短小的脚本的话,预热时间就显得长了点。

更多关于PyPy 4.0 的细节请参考其官方声明。PyPy 4 可以在这里下载

查看英文原文: Python JIT Compiler PyPy 4 Brings SMD Vectorization,Performance Improvements,and More


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-11-10 18:002746
用户头像

发布了 30 篇内容, 共 11.0 次阅读, 收获喜欢 0 次。

关注

评论

发布
暂无评论
发现更多内容

电商数据抓取新技能:京东商品详情API返回值分析

技术冰糖葫芦

api 网关 API Explorer API 策略 pinduoduo API

数业智能心大陆:揭秘如何利用AI做心理疗愈

心大陆多智能体

智能体 AI大模型 心理健康 数字心理

IoTDB 端边云同步:SQL 一键搞定 5 大常见场景

Apache IoTDB

海外网络加速方案:解决海外访问难题

Ogcloud

网络加速 海外网络加速 企业网络加速 网络加速服务

以太坊基金会AMA总结:面对ETH价格疲软,团队的应对策略与展望

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 NFT开发 代币开发

IPv6的优势分析

天翼云开发者社区

ipv6

西游再现!一键部署 Flux 文生图大模型生成西游人物

阿里巴巴云原生

阿里云 云原生

通义灵码怎么样?分为哪些版本,看看基础能力多少分?

阿里云云效

阿里云 云原生 通义灵码

低代码提升开发能力的思路

伤感汤姆布利柏

奇绩创坛 2025 春季创业营开始报名

奇绩创坛

奇绩创坛 奇绩创坛创业营

这应该是全网最详细的Vue3.5版本解读

快乐非自愿限量之名

JavaScript Vue 前端

美联储降息在即:加密市场风云再起,机遇与挑战并存

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 NFT开发 公链开发

ping命令使用及其常用参数

天翼云开发者社区

ping

功能发布-自定义SQL查询

ClkLog

sql 开源 自定义标签

奖项再+1!通义灵码智能编码助手通过可信 AI 智能编码工具评估,获当前最高等级

阿里巴巴云原生

阿里云 云原生 通义灵码

三分钟全面了解低代码,两小时实现应用系统搭建

EquatorCoco

低代码 系统搭建

开箱即用,AISBench测试展示英特尔至强处理器的卓越推理性能

E科讯

MacTalk 测评通义灵码,如何实现“微信表情”小功能?

阿里云云效

阿里云 云原生 通义灵码

云行| 云端释放“黔”力,天翼云赋能贵州“智”变!

天翼云开发者社区

人工智能 云计算 大数据

蚂蚁数科发布智能数据开发与治理平台DataFab 加速数据要素价值释放

Lily

台媒报道:华为云携手赞奇科技 推出《黑神话:悟空》专属云游戏服务

轶天下事

东郊到家平台系统模式开发功能部署设计未来展望

V\TG【ch3nguang】

NFC碰一碰刷卡、AI功能……2024年大学生都在关注手机哪些功能?

最新动态

中国传媒业人工智能应用发展图谱2024

易观分析

人工智能’

跨越山海,台湾媒体点赞《黑神话:悟空》云游戏服务

轶天下事

Java线程池详解

快乐非自愿限量之名

Java

奖项再+1!通义灵码智能编码助手通过可信 AI 智能编码工具评估,获当前最高等级

阿里云云效

阿里云 云原生 通义灵码

消费全返免单系统模式开发技术讲解

V\TG【ch3nguang】

第八届未来网络发展大会在宁召开,天翼云“息壤”助力算力互联互通一体化调度!

天翼云开发者社区

云计算 网络安全 网络发展大会

通义灵码怎么样?分为哪些版本,看看基础能力多少分?

阿里巴巴云原生

阿里云 云原生 通义灵码

大学生必备!华为手机校园智慧锦囊,一机在手,万事无忧

最新动态

Python JIT编译器PyPy 4引入SMD向量化并提升了性能_Python_Sergio De Simone_InfoQ精选文章