Python 3.13 发布首个 Beta:实验性自由线程模式和 JIT、改进交互式解释器


Python 3.13 Beta 1 已发布,主要变化包括改进的交互式解释器,以及实验性即时编译器 (JIT),这将带来性能上的提升。

至于备受关注的 no-GIL,目前自由线程构建模式已进入实验阶段。

PEP 703(Making the Global Interpreter Lock Optional,让全局解释器锁成为可选),简称 no-GIL,也被称为自由线程 (free-threaded)。

此外,循环垃圾收集器现在更具增量性,还引入了修改后的 mimalloc、以及新的类型注解等变化。

Python 3.13 Beta 1 的发布标志着已进入功能冻结阶段。在接下来的两个月中,至少还会有三个 Beta 版本,然后才是 RC 候选版本。如果一切顺利,Python 3.13 正式版本将在 10 月初发布。


相關推薦

2024-10-09

有多行编辑和颜色支持,以及彩色异常回溯功能。 一种实验性的自由线程构建模式,可禁用 Global Interpreter Lock (全局解释器锁),允许线程更并发地运行,构建模式在 Windows 和 macOS 安装程序中也作为实验性功能提供。 初步

2024-10-03

有多行编辑和颜色支持,以及彩色异常回溯功能。 一种实验性的自由线程构建模式,可禁用 Global Interpreter Lock (全局解释器锁),允许线程更并发地运行,构建模式在 Windows 和 macOS 安装程序中也作为实验性功能提供。 初步

2024-10-16

器、对在自由线程模式(无全局解释锁,no-GIL)下运行的实验性支持 (PEP 703),以及即时编译器 (PEP 744)。这些改进预计将带来性能的适度提升。 近日,开发者在AMD Ryzen 7000系列和第13代Intel Core处理器的电脑上,对Python 3.13与Python

2024-04-11

解释器中,异常回溯现在默认是彩色的。 添加了初步的实验性 JIT,为显著提高性能奠定了基础。 (循环)垃圾回收器现在是增量式的,这意味着在有大量对象的程序中,回收的停顿时间会更短。 文档字符串现在已删除其

2022-05-19

快的运行时,这些优化大部分来自于 PEP 659  :自适应解释器,它运作思路跟 JIT 有点相似,都是识别热点代码,但自适应解释器的工作范围无法脱离字节码。目前 PEP 659 提案的工作基本完成,但 for 循环和二进制操作的动态

2023-07-08

编译静态模块、字节码内联缓存、协程的即时评估,以及实验性字节码编译器,该编译器使用类型注释来生成在 JIT 中性能更好的类型专用字节码。 Cinder 为 Instagram 提供后端支持,并在 Meta 中越来越多的 Python 应用程序中使用。

2023-10-27

择启用自由线程 (free-threaded)。在此阶段对外明确告知是实验性的,不支持用于生产环境。 支持但不默认阶段。该阶段将在 API 和 ABI 变更充分解决,并且有足够的社区支持时开始启动。 默认阶段。此时默认启用自由线程(初

2023-07-11

的是 Making the Global Interpreter Lock Optional in CPython,让全局解释器锁在 CPython 中成为可选。 该提案建议向 CPython 添加构建配置 (--disable-gil),使其在没有全局解释器锁的情况下运行 Python 代码,并进行必要的更改以保证解释器线程

2023-12-26

也被编译。 不支持的调用类型和复态调用点不再退出到解释器。 Rails #blank?和specialized#present?等基本方法都是内联的。 对Integer#*、Integer#!=、String#!=、String#getbyte、 Kernel#block_given?、Kernel#is_a?、Kernel#instance_of?和Module#===进行

2023-10-15

Python 3.13.0 首个 alpha 已发布,目前处于非常早期的开发阶段。 本次发布的 Python 3.13 a1 是计划发布的七个 alpha 版本中的第一个。 发布 alpha 是为了更方便地测试新功能、修复错误,以及测试发布过程。请注意,这是一个预览版

2023-05-15

Ruby 3.3.0-preview1 已发布,作为 3.3 的第一个预览版。Ruby 3.3 最重大的改动是添加了一个名为 RJIT 的新纯 Ruby JIT 编译器,使用 Lrama 作为解析器生成器,并带来许多性能改进。 RJIT Ruby 3.3.0-preview1 引入纯 Ruby JIT 编译器 RJIT 替换了 MJI

2023-04-08

加载到 Web 服务器中,使得 Web 服务器可以使用 WebAssembly 解释器来运行这些模块。 下面是 WCGI 的部分亮点: 通过将现有的 CGI 应用程序(采用 AssemblyScript、C、C++、Go、PHP、Python 等语言编写)编译为 WASI (WebAssembly System Interfac

2022-11-22

全重写了 OCaml 运行时,其本身预计将是一个比平时更具实验性的版本。值得注意的是,原生编译器将仅在此 5.0 版本的 ARM64 和 x86-64 架构上可用。 此版本还有一个值得关注的特性:Multicore OCaml。它通过 domain 增加了对并行共

2023-04-12

的高性能pydantic-core验证器和序列化器的行为。 其他处于实验性阶段的功能: BaseModel——Pydantic V1 中的验证核心仍然存在,但使用了新的方法名称 数据类——改进了 Pydantic 数据类并已准备好进行测试 序列化——转储/