龙空技术网

Python 将快 64%—Python 3.10 与 Python 3.11 基准测试

杨同学编程 1494

前言:

当前我们对“python 查版本”都比较讲究,姐妹们都想要学习一些“python 查版本”的相关知识。那么小编同时在网上收集了一些关于“python 查版本””的相关文章,希望我们能喜欢,大家快快来学习一下吧!

Matthew Brodeur在Unsplash上拍摄

Python 不是目前最快的编程语言,这已不是什么秘密。好吧,这即将改变,或者至少朝着正确的方向前进。最新的 Python 版本——Python 3.11——预计将于 2022 年 10 月发布。更棒的是,有一个候选发布 (RC) 版本可供我们使用。

这正是我们今天要做的。我们将在单独的 Docker 容器中安装 Python 3.10 和 3.11,并查看它们在一组基准测试中的比较。我计划使用pyperformance 包来完成这项工作,因为它会完成所有繁重的工作。

TL;DR — 平均而言,Python 3.11 比 Python 3.10 快 14%。新版本在某些基准上稍微慢了一点,但在其他基准上,速度提高了 64%。我在配备 10 核 CPU 的 M1 Pro MacBook Pro 16 上运行了基准测试。每个 Python 版本都安装在 Docker 中,它使用 5 个逻辑 CPU 内核。您的里程可能会有所不同,但相对而言,您应该会看到类似的结果。

不想读书?请观看我的视频:

如何在 Docker 中安装 Python 3.11

如果你想跟随,你需要安装 Docker。它是任何数据科学工具带中的必备工具,因此不应该成为问题。Docker 运行后,打开两个终端选项卡。

首先,我们将在后台获取并运行 Python 3.10:

docker run -t -d python:3.10.4-bullseye

在第二个中,我们将做同样的事情,但对于 Python 3.11:

docker run -t -d python:3.11-rc-bullseye

Docker 将需要一些时间来下载和启动这两个镜像,具体取决于您的硬件配置和 Internet 速度。完成后,您可以打开两个 Visual Studio Code 窗口并将它们附加到 Docker 容器(使用 Docker VSCode 扩展,右键单击图像,然后选择“附加 Visual Studio Code”)。或者,您也可以仅连接外壳。

进入容器后,启动一个新的 VSCode 集成终端并检查 Python 版本:

图 1 — Visual Studio Code 中附加的 Python 3.10 和 3.11 容器(作者提供图片)

如您所见,左侧是 Python 3.10,右侧是 Python 3.11。接下来,我们将安装pyperformance软件包并运行基准测试。

如何使用 PyPerformance 运行 Python 基准测试

好的,所以我们在 VSCode 中运行并附加了两个容器。那是困难的部分。

下一步是安装pyperformance软件包。在两个容器中运行以下命令:

python3 -m pip install pyperformance

安装后,在附加到 Python 3.10 容器的 VSCode 窗口中运行以下 shell 命令:

pyperformance 运行 -o py310.json

并在 Python 3.11 容器中运行类似的命令:

pyperformance 运行 -o py311.json

这些命令将运行一套几十个基准测试,所以去喝杯咖啡吧——这需要一些时间。

图 2 — 在 Docker 中在 3.10 和 3.11 上运行 Python 基准测试(作者提供图片)

完成后,pyperformance将输出分别保存到py310.json和py311.json文件中:

图 3 — 两个 Python 版本的基准测试完成(作者提供的图片)

每个文件都在一个单独的 Docker 容器中,因此要实际比较两者,您必须将 JSON 文件下载到本地计算机(或将文件从一个容器上传到另一个容器)。

我已经在本地下载了它们并在 Python 虚拟环境中安装了 pyperformance 包。让我们看看他们接下来如何比较。

Python 3.10 与 Python 3.11 — 哪个更快?

最好将两个 JSON 文件放在同一个文件夹中。在终端窗口中打开该文件夹并运行以下 shell 命令:

pyperf compare_to py310.json py311.json --table

这是输出:

图 4 — Python 3.10 与 3.11 基准测试结果(作者提供的图片)

我计算了五个测试,其中 Python 3.10 比 Python 3.11 略快。在其他方面,Python 3.11 比 Python 3.10 快了 64%。根据几何平均值,Python 3.11 比 Python 3.10 快 14%。

Python 3.10 与 Python 3.11 基准测试总结

有了它——Python 3.10 和 Python 3.11 之间的性能比较。值得注意的是,Python 3.11 还没有发布,所以我们正在比较一个完全稳定的版本和一个候选版本。也许正式发布后两者之间的差距会更大。只有时间证明一切。

您如何看待即将发布的 Python 版本?看到 Python 运行得更快,您是否很兴奋,或者您根本不在乎?在下面的评论部分告诉我。

推荐阅读5 本学习数据科学先决条件(数学、统计和编程)的最佳书籍2022 年学习数据科学的前 5 本书在 Python 中打印列表的 7 种方法

标签: #python 查版本