地址:
https://github.com/masonr/yet-another-bench-script
效果:
如何跑步
curl -sL yabs.sh | bash
或者
wget -qO- yabs.sh | bash
此脚本已在以下 Linux 发行版上进行了测试:CentOS 6+、Debian 8+、Fedora 30 和 Ubuntu 16.04+。它旨在不需要安装任何外部依赖项,也不需要提升权限来运行。
本地 fio/iperf3 包:如果测试系统已经安装了 fio 和/或 iperf3,本地包将优先于预编译的二进制文件。
实验性 ARM 兼容性:已引入初始 ARM 兼容性,但由于对不同 ARM 设备的测试有限,因此并不认为完全稳定。报告任何错误或问题。
IPv6-Only 机器:上述命令不适用于 IPv6-only 机器。见下文。
高带宽使用注意:默认情况下,此脚本将执行许多 iperf 网络测试,这将尝试将每个位置的网络端口最大化约 20 秒(每个方向 10 秒)。低带宽服务器(例如 NAT VPS)应考虑使用-r
标志(减少 iperf 位置)或-i
标志(完全禁用网络测试)运行此脚本。
标志(跳过测试、减少 iperf 位置、Geekbench 4 等)
默认情况下,脚本运行下一节中描述的所有三个测试。如果您希望跳过一项或多项测试,请使用以下命令:
curl -sL yabs.sh | bash -s -- -{fdighr49}
-f
/-d
此选项禁用 fio(磁盘性能)测试-i
此选项禁用 iperf(网络性能)测试-g
此选项禁用 Geekbench(系统性能)测试-h
此选项打印包含使用情况、检测到的标志和本地包 (fio/iperf) 状态的帮助消息-r
此选项减少了 iperf 位置的数量(Online.net/Clouvider LON+NYC)以减少带宽使用-4
此选项会覆盖 Geekbench 5 性能测试并改为运行 Geekbench 4 测试-9
除了 Geekbench 5 测试之外,此选项还运行 Geekbench 4 测试
选项可以组合在一起跳过多个测试,即-fg
跳过磁盘和系统性能测试(实际上只测试网络性能)。
Geekbench 许可证密钥:在 Geekbench 测试期间可以使用 Geekbench 许可证密钥来解锁所有功能。只需将许可证的电子邮件和密钥放在名为geekbench.license的文件中。echo "[email protected] ABCDE-12345-FGHIJ-57890" > geekbench.license
进行的测试
- fio – 可用的最全面的 I/O 测试软件,fio 授予使用各种选项以各种方法评估磁盘性能的能力。四个随机读写 fio 磁盘测试作为此脚本的一部分进行,块大小分别为 4k、64k、512k 和 1m。这些测试旨在评估具有 50/50 分割(每次测试 50% 读取和 50% 写入)的接近真实世界(使用随机)场景中的磁盘吞吐量。
- iperf3 – 测试下载和上传到不同位置的速度的行业标准。此脚本使用具有 8 个并行线程的 iperf3 并测试下载和上传速度。如果 iperf 服务器在 10 次尝试后忙碌,则跳过该位置/方向的速度测试。
- Geekbench – Geekbench 是一个衡量系统性能的基准测试程序,在技术社区中被广泛使用。显示的 Web URL 能够查看完整的测试和单独的基准测试结果,并允许与其他 geekbench 的系统进行比较。将 Geekbench 结果添加到您的 Geekbench 配置文件的声明 URL 将写入执行此脚本的目录中的文件。默认情况下,Geekbench 5 是唯一执行的 Geekbench 测试,但是,Geekbench 4 也可以通过传递适当的标志来切换。
安全须知
该脚本依赖于外部二进制文件来完成性能测试。网络 (iperf3) 和磁盘 (fio) 测试使用由我自己利用Holy Build Box 编译环境编译的二进制文件,以确保二进制文件的可移植性。这样做的原因包括确保标准化(可解析)输出,允许支持 32 位和 64 位架构,绕过编译和/或安装先决条件的需要,以及其他原因。对于系统测试,下载、提取 Geekbench tarball 并运行生成的二进制文件。使用此脚本的风险自负,就像使用网络上公开的任何脚本一样。有关二进制文件的其他信息,包括编译说明和步骤,可以在 bin 目录的README 页面中找到.