目录
- 简介
- 首次用户
- 功能特点
- 竞品和相关作品
- 进一步阅读
简介
hyperfine 是一个用于命令行基准测试的开源工具,可以对多次命令运行的时间进行分析,帮助开发人员评估和比较不同命令或脚本的性能。它是用 Rust 语言开发的,可以在 Windows、macOS 和 Linux 上运行。
首次用户
-
使用
x hyperfine
即可自动下载并使用- 在终端运行
eval "$(curl https://get.x-cmd.com)"
即可完成 x 命令安装, 详情参考 x-cmd 官网
- 在终端运行
-
x-cmd 提供1分钟教程,其中包含了 hyperfine 命令常用功能的 demo 示例,可以帮你快速上手 hyperfine 。
-
使用案例:
# 对指定命令行工具进行基准测试,如 ls 命令 $ x hyperfine ls # 连续测试 5 次 `sleep 0.3` 命令,然后计算其平均值和标准差 $ x hyperfine --runs 5 'sleep 0.3' # 对同一命令不同参数的情况进行测试 $ x hyperfine -P delay 0.3 0.7 -D 0.2 'sleep {delay}' # 将基准测试结果导出为命名为 test 的 Markdown 文件 $ x hyperfine 'ls' --export-markdown test.md
功能特点
- 统计分析多次运行的结果。
- 默认情况下,对每个命令至少执行 10 次基准测试,每次至少测量 3 秒钟,可以通过
-r/--runs
参数控制运行次数。
- 默认情况下,对每个命令至少执行 10 次基准测试,每次至少测量 3 秒钟,可以通过
- 支持任意的 shell 命令。
- 持续反馈基准测试进度和当前的估计情况, 可检测异常值。
- 预热运行和预先命令,使得后续的测试结果更加准确和可靠。
- 如果要在热缓存上运行基准测试,
-w / --warmup
选项,可以用于指定在实际基准测试之前执行的预热运行次数 - 如果要运行冷缓存基准测试,可以使用
-p/--prepare
选项,在每次计时运行之前运行指定命令,清楚缓存
- 如果要在热缓存上运行基准测试,
- 可将结果导出为各种格式 : CSV, JSON, Markdown, AsciiDoc.
竞品和相关作品
- time 用于确定指定命令的执行持续时间,大多数情况下作为内置 shell 存在。
- bench 是
time
的更强大的替代品,可以快速测量一些基本的性能数据。
进一步阅读
- hyperfine GitHub 官网
- hyperfine - Man Page
- hyperfine 使用指南
X-CMD 官网
x-cmd-pkg
x-cmd-1min