![版本和发行版之间的 sysbench 结果是否具有可比性?](https://linux22.com/image/183527/%E7%89%88%E6%9C%AC%E5%92%8C%E5%8F%91%E8%A1%8C%E7%89%88%E4%B9%8B%E9%97%B4%E7%9A%84%20sysbench%20%E7%BB%93%E6%9E%9C%E6%98%AF%E5%90%A6%E5%85%B7%E6%9C%89%E5%8F%AF%E6%AF%94%E6%80%A7%EF%BC%9F.png)
我有一台可以启动到 Ubuntu 18.04.5 或 Fedora 32 的机器。我遇到了一些性能问题,所以我想我应该在两个发行版上运行快速基准测试。我从包管理器安装了 sysbench 并运行了 CPU 和内存基准测试,为此我分别记录了每秒的事件数和每秒的总操作数。该机器有四个物理核心,所以我运行了 1 个和 4 个线程。
Ubuntu有sysbench 1.0.11(使用系统LuaJIT 2.1.0-beta3)。
Fedora 有 sysbench 1.0.17(使用系统 LuaJIT 2.1.0-beta3)。
版本和结果是两个发行版输出的唯一区别;素数数量、块大小等选项是相同的。
结果是:
Distro CPU (1 thr) CPU (4 thr) memory (1 thr) memory (4 thr)
Ubuntu 18.04.5 1213.05 4384.59 5332997.51 8069089.73
Fedora 32 156442.30 564670.95 6220026.17 9055910.28
内存结果的差异似乎合理,但 CPU 结果的差异却相当令人惊讶。
我应该期待这些更加相似吗?
答案1
兴趣点:
软件包版本差异很大,新版本可能包含旧版本中未找到的优化
大多数 Linux 发行版以不同的方式编译软件包,即不仅使用不同的编译器,而且使用不同的编译器优化/标志 - 它们也可能会影响您的分数。
您很可能可以直接在 Fedora 中运行 Ubuntu 的 sysbench,不会出现任何问题 - 请执行并检查结果。如果它们反映了您的 Ubuntu 结果,则将确认前面的任一点或全部。