Python 3.13 上周正式发布了稳定版,主要变化包括一个新的交互式解释器、对在自由线程模式(无全局解释锁,no-GIL)下运行的实验性支持 (PEP 703),以及即时编译器 (PEP 744)。这些改进预计将带来性能的适度提升。 近日,开发者在 AMD Ryzen 7000 系列和第 13 代 Intel Core 处理器的电脑上,对 Python 3.13 与 Python 3.12 进行了性能测试,共计 100 项不同的基准测试。 所有测试都在使用 Windows 11 的电脑上进行,使用的是 Python 3.12.7 和 Python 3.13.0(均为 64 位版本)的 pyperformance 1.11.0 库。 AMD Ryzen 7000 系列桌面处理器测试的第一部分使用一台配备 AMD Ryzen 9 7900 处理器、DDR5 内存和 M.2 PCIe Gen4 NVMe 驱动器的台式电脑。 下表显示了在该设备上使用 Python 3.12(作为参考)和 Python 3.13 进行的 100 项测试的结果。
结果显示,Python 3.13 在以下测试中比 Python 3.12 有最佳性能结果:async_tree_eager_io_tg(快 1.61 倍),async_tree_eager_io(快 1.54 倍),async_tree_io_tg(快 1.54 倍)。 然而,你可能会注意到一些测试的性能下降,特别是在 coverage(慢 1.36 倍),create_gc_cycles(慢 1.13 倍),regex_v8(慢 1.13 倍)。 此外,你可以根据属于特定组别的基准测试来检查 Python 3.13 和 Python 3.12 之间的性能差异。 下表显示了与 Python 3.12 相比,Python 3.13 的基准测试组的几何平均值。
第 13 代 Intel Core 移动处理器测试的第二部分使用一台配备 Intel Core i3-1315U 处理器(也用于笔记本电脑)、DDR4 内存和 M.2 PCIe Gen4 NVMe 驱动器的迷你电脑。 下表显示了在该设备上使用 Python 3.12(作为参考)和 Python 3.13 进行的 98 项测试的结果。由于在 Python 3.13 的此配置中无法运行,因此跳过了 “dask” 测试。
结果显示,Python 3.13 在以下测试中比 Python 3.12 有最佳性能结果:asyncio_tcp_ssl(快 1.51 倍),async_tree_io_tg(快 1.43 倍),async_tree_eager_io(快 1.40 倍)。 然而,你可能会注意到一些测试的性能下降,特别是在 coverage(慢 3.85 倍),regex_v8(慢 1.26 倍),telco(慢 1.19 倍)。 此外,你可以根据属于特定组别的基准测试来检查 Python 3.13 和 Python 3.12 之间的性能差异。 下表显示了与 Python 3.12 相比,Python 3.13 的基准测试组的几何平均值。
(责任编辑:IT) |