BT

Ready for InfoQ 3.0? Try the new design and let us know what you think!

YourKitがプロファイラの2013バージョンをリリース

| 作者: Fabian Lange フォローする 0 人のフォロワー , 翻訳者 吉田 英人 フォローする 0 人のフォロワー 投稿日 2013年12月13日. 推定読書時間: 2 分 |

原文(投稿日:2013/11/28)へのリンク

Javaプロファイラの最新となる2013バージョンをリリースするにあたって,YourKitがもっとも重視しているのは,ハイレベルデータ収集機能の改善である。いわゆるJ2EEハイレベルプロファイリングで同社が意図しているのは,単にタイミング情報を提供するのではなく,論理的な処理状況を把握可能にすることだ。

SQL文,JNDIコール,JSP呼び出しといったハイレベルプロファイリングに必要なデータは,一般にプローブと呼ばれるものを使って収集する。前バージョンでは,これらのプローブが,バイトコードの再変換を使ってコードにアタッチされたり,取り外されたりしていた。このプロセスは相当な負荷を伴うと同時に,「クラス再変換 (class retransformation)」という,対象のVMで無効に設定することも可能な機能を必要としていた。
2013バージョンでは,プローブはコードに常時アタッチされるようになった。その代わりにアクティベーションとデアクティベーションを,プローブ内部の簡単なチェックでコントロールですることができる。
さらにオーバーヘッドを削減するため,プローブ状態の変更は即時に有効になる。
プローブにはon,off,autoの3つの状態がある。autoでは,CPUプロファイルモードの場合にプロファイルがアクティブになる。
 
代表的な新機能であるPerformance Chartは,プローブが収集したデータの視覚化と相関化を行うものだ。例えば,CPUの高負荷とデータベース呼び出し,あるいはメモリ消費とサーブレットコール数などの相関関係を抽出することができる。このようなハイレベルの分析は,詳細レベルの情報を扱うプロファイラではなく,通常ならばAPMツールが備えるものだが,システムのどの部分に相互作用が存在するのかを探る上では,よい出発点となるだろう。
 
CPUプロファイリングには,設定項目が追加されている:
  • getterやsetterのように,通常は対象外であるメソッドも取り付けが可能になった。
  • 1ミリ秒以下で実行されるメソッドについても,UIで選択的に表示できるようになった。
メモリプロファイルにも追加項目がある:
  • Dateのような単純なオブジェクトやプリミティブ型のラッパに対して,それに対応する値が表示される。これによって内包する値を調べるためのドリルダウンが不要になり,分析作業がスピードアップする。
  • 自己参照がオブジェクトツリーに展開されることがなくなた。これにより,誤って再帰参照をドリルダウンすることが防止される。
当然ながらJava 8に対しては,デフォルトメソッドのプロファイルをサポートするように拡張が行われている。また,すべてのIDEに対して,新バージョンを対象とする統合がサポートされている。TestNGを使用した既存のテストも簡単にプロファイルできるようになった。
 
YourKitの価格は開発者単位で499ドル,フローティングライセンス単位では2,499ドルである。購入後1年以内のアップグレードは無償,それ以降は40%のディスカウントが適用される。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション
BT