Repolode
sharkdp

sharkdp/hyperfine

統計分析やウォームアップ実行に対応し、結果をCSV、JSON、Markdown、AsciiDocに出力できるコマンドラインベンチマークツール。

スター
29,139
フォーク
555
未解決の Issue
62
最終コミット
10 日前

これは何?

hyperfineは、シェルコマンドの実行時間を計測します。1つ以上のコマンドを指定すると、それぞれを繰り返し実行し、平均、標準偏差、中央値、最小値、最大値を報告します。また、干渉やキャッシュの影響が原因と考えられる統計的な外れ値も検出します。複数のコマンドを指定した場合は、最初のコマンドに対する相対的な速度差も表示します。

実時間に加えて、CPUのユーザー時間とシステム時間、ピークメモリ使用量、さらにLinuxではサイクル数、命令数、キャッシュミスなどのハードウェアカウンターも収集できます。ウォームアップ実行や、ファイルシステムキャッシュのクリアなどを行う各実行前の準備コマンドを使えば、キャッシュが温まった状態と冷えた状態のどちらでもベンチマークできます。パラメーターのスキャンやリストを使うと、1つのテンプレートから複数のベンチマークを実行できます。

結果はCSV、JSON、Markdown、AsciiDoc、org-mode形式で出力できます。JSON出力は、リポジトリ内のPythonヘルパースクリプトでさらに分析でき、ヒストグラムやひげ図を生成できます。Linux、macOS、Windowsで動作し、主要なOSの大半向けにパッケージが提供されています。

主な機能

  • 01コマンドを繰り返し実行し、平均、中央値、標準偏差、最小値、最大値を報告します。
  • 02干渉やキャッシュが原因と考えられる統計的な外れ値を検出します。
  • 03ウォームアップ実行と準備コマンドに対応し、キャッシュの状態を制御できます。
  • 04パラメーターのスキャンやリストから、テンプレートを使ってベンチマークを実行できます。
  • 05実時間、CPU、メモリに加え、Linuxではハードウェアカウンターのメトリクスも収集します。
  • 06結果をCSV、JSON、Markdown、AsciiDoc、org-mode形式で出力できます。

ユースケース

  • grepとripgrepのように、同じ処理を行う2つのコマンドラインツールの速度を比較する。
  • gitブランチ間で、コード変更がビルドやスクリプトの実行時間に与える影響を測定する。
  • ディスクキャッシュが温まった状態と冷えた状態で、プログラムのパフォーマンスをテストする。
  • ドキュメントやレポート向けのベンチマーク表を作成する。

クイックスタート

  1. 1

    公式リポジトリからUbuntuにインストール

    apt install hyperfine
  2. 2

    コマンドの初回ベンチマークを実行

    hyperfine 'sleep 0.3'

使う前に知っておきたいこと

  • ハードウェアカウンターなど、一部の機能はLinux専用、またはWindowsではサポートされていません。

トピック

よくある質問

hyperfine とは?
統計分析やウォームアップ実行に対応し、結果をCSV、JSON、Markdown、AsciiDocに出力できるコマンドラインベンチマークツール。 hyperfineは、シェルコマンドの実行時間を計測します。1つ以上のコマンドを指定すると、それぞれを繰り返し実行し、平均、標準偏差、中央値、最小値、最大値を報告します。また、干渉やキャッシュの影響が原因と考えられる統計的な外れ値も検出します。複数のコマンドを指定した場合は、最初のコマンドに対する相対的な速度差も表示します。
hyperfine は無料で使えますか?ライセンスは?
hyperfine は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
hyperfine は今もメンテナンスされていますか?
活発にメンテナンス中。hyperfine の最終コミットは 2026年10月12日 です。
hyperfine は何に使えますか?
grepとripgrepのように、同じ処理を行う2つのコマンドラインツールの速度を比較する。 gitブランチ間で、コード変更がビルドやスクリプトの実行時間に与える影響を測定する。 ディスクキャッシュが温まった状態と冷えた状態で、プログラムのパフォーマンスをテストする。 ドキュメントやレポート向けのベンチマーク表を作成する。
hyperfine のインストール方法は?
公式リポジトリからUbuntuにインストール: apt install hyperfine コマンドの初回ベンチマークを実行: hyperfine 'sleep 0.3'
hyperfine はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/sharkdp/hyperfine

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト