Skip to content

Hyperfine

命令列基準測試工具

軟體分類 生產力 / 系統工具
軟體標籤
rated-1雙重驗證 (2FA)man
開發廠商 sharkdp
Stars
27.7k
Forks
448
License
MIT / APACHE-2.0
Version
v1.19.0
Update
2026-02-14
OS

產品說明

Hyperfine 是一款強大的命令列基準測試(Benchmarking)工具。當開發者需要比較兩個指令的執行速度(例如:grepripgrep),或者測試程式碼優化後的效能提升時,Hyperfine 能提供遠比系統內建 time 指令更精確、更具統計意義的結果。

它會自動進行多次執行以消除系統隨機誤差,並支援在測試前執行「預熱(Warmup)」以排除磁碟緩存的影響。最令人驚艷的是,它能直接對比多個指令並生成直觀的摘要,告訴你 A 指令比 B 指令快了多少倍。

核心特色:

  • 統計穩定性:自動計算平均值、標準差,並偵測統計上的離群值。
  • 熱機/冷機測試:支援設定預熱次數(Warmup runs),確保測試環境的一致性。
  • 多指令對比:一次輸入多個指令,自動生成效能對比倍數分析。
  • 多樣化輸出:支援將結果導出為 CSV、JSON 或 Markdown 表格,方便撰寫測試報告。
  • 參數掃描:支援透過變數測試不同參數組合(例如測試不同執行緒數下的效能)。

常用指令

Hyperfine 的基本語法非常直覺,通常用於對比與重複測試。

基礎效能測試

# 測試單一指令執行速度
hyperfine 'sleep 0.3'

# 對比兩個指令的效能 (例如 fd 與 find)
hyperfine 'fd' 'find .'

# 包含預熱 (Warmup) 的測試
hyperfine --warmup 3 'grep -r "pattern" .'
常用參數功能說明使用場景
-w / –warmup執行前的預熱次數排除硬碟快取對首次執行的影響
-m / –min-runs最少執行次數確保統計數據具備代表性
-p / –prepare每次測試前的準備指令例如測試前清理快取:sync; echo 3 > /proc/sys/vm/drop_caches
-P / –parameter-scan參數範圍掃描測試 grep --threads {n} 中 n 從 1 到 8 的效能變動

輸出結果範例

當執行對比測試時,Hyperfine 會輸出如下摘要:

Summary
  'fd' ran
    1.42 ± 0.05 times faster than 'find .'

操作介面