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