Python 3.13 将引入 copy-and-patch JIT 编译器
2023 年 12 月下旬,CPython 核心开发者 Brandt Bucher 向 Python 3.13 分支提交了一个添加 JIT 编译器的 PR。
via https://github.com/python/cpython/pull/113465
根据 PR 的描述,该 JIT 编译器采用了名为"copy-and-patch"的设计,其工作原理是将字节码编译成一组“模板”,然后在运行时使用正确的值进行拼接和修补。这意味着普通 Python 用户不需要在他们的 Python 运行时中运行复杂的 JIT 编译器架构。
copy-and-patch JIT 编译器尽可能使用 LLVM 生态的工具,比如编译器采用 Clang,编译参数设为 -o3 以获取最大的性能,二进制工具用 llvm-objdump 和 llvm-readelf。
Copy-and-Patch 技术的优点是开发者无需手写汇编代码就可以生成高效的机器码,同时在运行期产生汇编代码的方式是快速的。
相比于完整的 JIT 编译器,copy-and-patch JIT 编译器只需要在编译 CPython 的机器上安装 LLVM JIT 工具。这种设计的好处是它减少了额外的开销,同时提高了 Python 的性能。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Sermant 重磅更新,1.3.0 release 版本发布
本文分享自华为云社区《新特性速览!Sermant重磅更新,1.3.0 release版本发布》,作者:华为云开源。 Sermant社区在12月份正式发布了1.3.0 release版本,这次更新中,Sermant新增服务治理插件:消息队列禁止消费插件。该插件允许在微服务运行时动态地控制消费者(如Kafka、RocketMQ)的消费行为,实现禁止或开启消费,强化了Sermant的可用性治理能力。 除此之外,本次版本更新还对Seramnt框架存在的已知问题和部分功能进行了修复和优化。(Sermant官网:https://sermant.io/) 一、服务治理能力提升 1.1 动态调整消费者消费行为 本次Sermant更新新增了消息队列禁止消费插件,该插件允许微服务在运行态根据实际需求动态调整消费者对消息队列中间件的消费行为,确保在非正常环境或状态下,业务处理流程中的消息得到妥善管理,避免不必要的业务影响。例如,在多云多活架构系统中,如果发生区域性故障需要对流量做切流处理,可在发生故障的可用区开启消息队列禁止消费功能,让正常可用区的消费者来处理业务,避免故障区域消费流量导致业务异常,保障系统...
- 下一篇
京东启动鸿蒙原生应用开发
华为与京东宣布达成合作,正式启动鸿蒙原生应用开发。华为常务董事、终端业务CEO、智能汽车解决方案BU董事长余承东在微博发文称: 今天我们迎来了重量级合作伙伴@京东 ,奠定了鸿蒙生态今年的又一座重要里程碑!京东将基于HarmonyOS NEXT的全场景无缝流转、原生智能等创新特性开发原生应用,为消费者带来简单易用、极致流畅、纯净安全、多快好省的购物体验。欢迎更多伙伴加入我们,共同打造前所未有的鸿蒙新生态,共赢万物互联时代! 截至目前,国内 200 家头部应用厂商中,已有超百家启动鸿蒙原生应用开发。
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS8编译安装MySQL8.0.19
- CentOS7,CentOS8安装Elasticsearch6.8.6