在上拍摄
不是目前最快的编程语言,这已不是什么秘密。好吧,这即将改变,或者至少朝着正确的方向前进。最新的 版本—— 3.11——预计将于 2022 年 10 月发布。更棒的是,有一个候选发布 (RC) 版本可供我们使用。
这正是我们今天要做的。我们将在单独的 容器中安装 3.10 和 3.11,并查看它们在一组基准测试中的比较。我计划使用 包来完成这项工作,因为它会完成所有繁重的工作。
TL;DR — 平均而言, 3.11 比 3.10 快 14%。新版本在某些基准上稍微慢了一点,但在其他基准上,速度提高了 64%。我在配备 10 核 CPU 的 M1 Pro Pro 16 上运行了基准测试。每个 版本都安装在 中,它使用 5 个逻辑 CPU 内核。您的里程可能会有所不同,但相对而言,您应该会看到类似的结果。
不想读书?请观看我的视频:
如何在 中安装 3.11
如果你想跟随,你需要安装 。它是任何数据科学工具带中的必备工具,因此不应该成为问题。 运行后,打开两个终端选项卡。
首先,我们将在后台获取并运行 3.10:
docker run -t -d python:3.10.4-bullseye
在第二个中,我们将做同样的事情,但对于 3.11:
docker run -t -d python:3.11-rc-bullseye
将需要一些时间来下载和启动这两个镜像,具体取决于您的硬件配置和 速度。完成后,您可以打开两个 Code 窗口并将它们附加到 容器(使用 扩展,右键单击图像,然后选择“附加 Code”)。或者,您也可以仅连接外壳。
进入容器后,启动一个新的 集成终端并检查 版本:
图 1 — Code 中附加的 3.10 和 3.11 容器(作者提供图片)
如您所见,左侧是 3.10,右侧是 3.11。接下来,我们将安装软件包并运行基准测试。
如何使用 运行 基准测试
好的,所以我们在 中运行并附加了两个容器。那是困难的部分。
下一步是安装软件包。在两个容器中运行以下命令:
python3 -m pip install pyperformance
安装后,在附加到 3.10 容器的 窗口中运行以下 shell 命令:
pyperformance 运行 -o py310.json
并在 3.11 容器中运行类似的命令:
pyperformance 运行 -o py311.json
这些命令将运行一套几十个基准测试,所以去喝杯咖啡吧——这需要一些时间。
图 2 — 在 中在 3.10 和 3.11 上运行 基准测试(作者提供图片)
完成后,将输出分别保存到py310.json和py311.json文件中:
图 3 — 两个 版本的基准测试完成(作者提供的图片)
每个文件都在一个单独的 容器中,因此要实际比较两者,您必须将 JSON 文件下载到本地计算机(或将文件从一个容器上传到另一个容器)。
我已经在本地下载了它们并在 虚拟环境中安装了 包。让我们看看他们接下来如何比较。
3.10 与 3.11 — 哪个更快?
最好将两个 JSON 文件放在同一个文件夹中。在终端窗口中打开该文件夹并运行以下 shell 命令:
pyperf compare_to py310.json py311.json --table
这是输出:
图 4 — 3.10 与 3.11 基准测试结果(作者提供的图片)
我计算了五个测试,其中 3.10 比 3.11 略快。在其他方面, 3.11 比 3.10 快了 64%。根据几何平均值, 3.11 比 3.10 快 14%。
3.10 与 3.11 基准测试总结
有了它—— 3.10 和 3.11 之间的性能比较。值得注意的是, 3.11 还没有发布,所以我们正在比较一个完全稳定的版本和一个候选版本。也许正式发布后两者之间的差距会更大。只有时间证明一切。
您如何看待即将发布的 版本?看到 运行得更快,您是否很兴奋,或者您根本不在乎?在下面的评论部分告诉我。
———END———
限 时 特 惠: 本站每日持续更新海量各大内部创业教程,永久会员只需109元,全站资源免费下载 点击查看详情
站 长 微 信: nanadh666