いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

Hyperfine (sharkdp/hyperfine)(ベンチマーク, rust)

関連記事

GitHub - devlights/blog-summary: ブログ「いろいろ備忘録日記」のまとめ

概要

以下、自分用のメモです。。たまに使いたいときに名前を忘れるのでここにメモメモ。。。

最近ベンチマークを計測する際に hyperfine をよく利用しています。

が、齢のせいか名前を忘れるんですよね・・・使いたいときに限って。

github.com

Rustで作成されているので、起動も含めて速度はすごく速いです。さらにクロスプラットフォームなのでどこでも利用できる。

最近のバージョンだとマイクロ秒のレポートも出力出来るようになったので、更に良い。

time コマンドよりも精密な時間を計測したいときに便利です。

サンプル

task: [build] go build -o app .
task: [run] hyperfine --time-unit microsecond --warmup 3 --runs 10 './app -syscall -val 5'
Benchmark 1: ./app -syscall -val 5
  Time (mean ± σ):     6598.1 µs ±  76.6 µs    [User: 1392.5 µs, System: 643.6 µs]
  Range (min … max):   6538.4 µs … 6733.6 µs    10 runs
 
-----------------------
task: [run] hyperfine --time-unit microsecond --warmup 3 --runs 10 './app -val 5'
Benchmark 1: ./app -val 5
  Time (mean ± σ):     6749.0 µs ± 142.1 µs    [User: 1176.5 µs, System: 829.2 µs]
  Range (min … max):   6530.1 µs … 6944.2 µs    10 runs

参考情報

wonderwall.hatenablog.com

qiita.com

wiki.gentoo.org


過去の記事については、以下のページからご参照下さい。

サンプルコードは、以下の場所で公開しています。