Java のプロファイラツール Yourkit について紹介。
※ ちなみに触った事は無いですが、.Net 版もあるみたいです。
プロファイラまで使うプロジェクトってどれくあるか分かりませんが、
プログラムの性能測定、ボトルネックやメモリリークの発見と、
特定用途のプログラムに依存せずに、様々な所で役立つので、
知っておいて損はないはず!!
今回使ってみた YourKit ですが、
何が良いかって、とにかく簡単に使えて、分かりやすいです。
全部英語なので最初躊躇しましたが、やりたかった大体の事は直感的に分かりました。
シェアウェアですが、メールを登録してライセンスキーを発行してもらえば1か月のお試し期間があります。
プロセスにアタッチ
何はともあれ、プログラムにアタッチしないと始まらないので、、、
Yourkit を起動して、
[Welcome] - [Monitor Local Applications]
ここから起動中の Java アプリが選択できるので、ダブルクリックすると、
プロセスにアタッチしてくれます。簡単
[Monitor Remote Applications] なる項目もあるので、ローカル以外のアプリにもアタッチは可能っぽいです。
Start CPU Profiling
CPUのプロファイルです。
どのメソッドが全体のうち、どの程度の処理時間を要していたかなどが分かります。
さらに、
This live view providers only basic infomations. to perfom comprehensive analysis, capture snapshot
とすると、スナップショットを作ってくれて、より詳細な解析が行えます。
そこにある [Hot spots] を見ると、どこで時間が掛かる処理が行われているかなど一目で分かります。
Capture Memory Snapshot
ボタン1つでメモリダンプを取ってくれます。簡単
後書
紹介というほど大した内容にならなかったですが、、、
他にも色々機能があるので、困ったときに選択肢の1つに入れておくとよいかと。