Perl: ベンチマークを取る
CPANモジュール逆引きガイド
処理速度、処理効率を測定したり比較するベンチマークツール。
- Benchmark: デファクト
- Benchmarks: Benchmark の簡易インターフェースを提供する版
- Parallel::Benchmark: 並列処理のベンチマークツール
- Test::Benchmark: ベンチ結果をテスト
ベンチマークは何度か実行して平均的な結果を得る方が良い。実行マシンの別の処理の影響を受けることがあったりするから。
ベンチマーク結果をシェアするときは必ずソースコードも一緒に公開して再現できるようにしよう。結果だけアピールしてしまうとたびたびもめごとが起きるので要注意。
モジュールを比較するとき、速度だけで比較すると危ないこともある。リーダビリティや拡張性が犠牲になっていることもあるからだ。速いには理由がある。速さの理由まで把握するのが重要だったりする。
翻って速いライブラリを書こうとやりすぎてしまうと、使いにくいライブラリになってしまったりするので注意がいる。とはいえ、基本的に速さは価値である。