Rust製ベンチマーク計測用の便利なコマンドで、hyperfineというのがある。
READMEを一読してもいまいち使い方がわかりにくいのでメモ。
出力形式を最初に指定して、あとは、比較したいコマンドを並べておけばいい。たとえばこんな感じ。
hyperfine --warmup 1 --export-csv vcf-bench.csv \
'python python-cyvcf2/read.py 1kg.chr1.subset.bcf' \
'rust-htslib/target/release/rust-rhtslib 1kg.chr1.subset.bcf' \
'rust-noodles/target/release/rust-noodles 1kg.chr1.subset.bcf' \
'nim-hts-nim/read ./1kg.chr1.subset.bcf' \
'c-htslib/read 1kg.chr1.subset.bcf' \
'python python-pysam/read.py 1kg.chr1.subset.bcf' \
'go-vcfgo/go-vcfgo 1kg.chr1.subset.vcf.gz' \
'ruby-htslib/read.rb 1kg.chr1.subset.bcf'
出力できる形式は asciidoc
csv
json
markdown
の4通り。2つ以上指定することも可能。
--export-asciidoc <FILE>
--export-csv <FILE>
--export-json <FILE>
--export-markdown <FILE>
この記事は以上です。