Devel::NYTProfでコードのプロファイリング
Shibuya.pm#11でclkaoさんが紹介されていたDevel::NYTProfモジュールを初めて知り、早速試したところ
とっても結果が美しくて便利だったのでメモメモ。
開発がひととおりすんだが、なぜか速度がでない。そんなときにはプロファイラの出番です。
Devel::NYTProf - モダンなPerl入門 - モダンなPerl入門
指定したモジュール別にライン毎・ブロック毎・関数毎など、プログラムのどこで時間がかかってるかわかるモジュールです。
以下のコマンドだけで、解析結果が./nytprof/index.htmlに出力されています。
perl -d:NYTProf target.pl # HTML出力 nytprofhtml open nytprof/index.html
SYNOPSISではcsvにする方法も掲載されています
# or into comma seperated files, e.g., ./nytprof/*.csv nytprofcsv
他にもDevel::DProf、Devel::Profilerなどと組み合わせると精度が上がりそうですね!!
Devel::Coverも結果がHTMLに出力できるので、テストの精度も上げつつ併せて使ってみたいと思います。