見出し画像

Go言語のベンチマーク結果をグラフ表示するプログラムを作っています

今朝は3時半に、助手の猫さんが起こしにきました。寒いのにリビングで寝ていたようです。「ご飯ください」と言いにきました。食べた後、またリビングで寝ていたようですが4時過ぎに、かみさんの布団に来て寝ていました。
私も寒くて5時まで寝ていました。

すごいログ分析ツール(TWSLA)へログを読み込む速度が低下する問題を調べていていろいろわかったことがあります。調べた結果を、まとめるためにGo言語のベンチマーク結果をグラフにしようと思いました。

$go test -bench .  -benchmem
goos: darwin
goarch: arm64
pkg: lotusdb_test
Benchmark_bbolt_seq-10       	  493197	      2673 ns/op	    8609 B/op	      57 allocs/op
Benchmark_lotusdb_seq-10     	  433036	      2941 ns/op	    3434 B/op	      40 allocs/op
Benchmark_badger_seq-10      	  785300	      1590 ns/op	    1647 B/op	      18 allocs/op
Benchmark_bbolt_rand-10      	  155701	     48440 ns/op	    6417 B/op	      49 allocs/op
Benchmark_lotusdb_rand-10    	  394960	      3468 ns/op	    3100 B/op	      41 allocs/op
Benchmark_badger_rand-10     	  610329	      1819 ns/op	    1545 B/op	      18 allocs/op
PASS
ok  	lotusdb_test	15.933s

のような結果です。Excelなどを使って手作業でグラフ作ってもよいのですが、プログラムでやりたくなりました。
そこで今朝は、本来の目的とは違うプログラムを作ってしまいました。
グラフの表示は、TWSLAでも使っている

を使いました。
できたグラフは、

です。HTMLなのでインターラクティブに表示を変えられます。

プログラムの詳しい説明は、Qiitaの記事に書きました。

明日に続く

いいなと思ったら応援しよう!

twsnmp
開発のための諸経費(機材、Appleの開発者、サーバー運用)に利用します。 ソフトウェアのマニュアルをnoteの記事で提供しています。 サポートによりnoteの運営にも貢献できるのでよろしくお願います。