プロファイラについて

プロファイラは、実行中のプログラムによるプロセッサおよびメモリーのリソースの使用状況を監視し、ログに記録します。統計が収集され、パフォーマンスの問題をより容易に診断してコードの非効率な部分を修正できます。

JDeveloperには、ローカルおよびリモート・プロファイリング用に、CPUプロファイラおよびメモリー・プロファイラという2種類のプロファイラが用意されています。

CPUプロファイラのビュー

CPUプロファイリングは、Javaプラットフォームのコールを表示し、これらのメソッド・コールの回数をカウントして、アプリケーションの各メソッドの処理に要した時間を表にまとめます。CPUプロファイラでは、データが2つのビューに表示されます。「ホットスポット」と「コール・スタック」です。

「ホットスポット」ビューには、CPUプロファイラの操作の時間サンプリング・モードでの時間使用でソートされた、すべてのJavaプラットフォーム・メソッドとそのメソッドでコールされたすべてのメソッドが表示されます。また、各メソッドのCPU使用時間の累積も表示されます。メソッド・コール・カウント操作中、「ホットスポット」ビューには、すべてのメソッドおよびそれらがコールされた回数が表示されます。詳細

「コール・スタック」ビューでは、CPUプロファイラの時間サンプリング操作モードの場合、コール階層でコールされたJavaプラットフォーム・メソッドを表示できます。メソッド・コールのカウント・モードの場合には、コールされたJavaプラットフォーム・メソッドがスレッド・グループ別にソートされて表示されます。詳細

メモリー・プロファイラのビュー

メモリー・プロファイリングには、アプリケーションのどの部分が最も多くのメモリーを使用しているかを表示して、メモリー・リークを検出しやすくします。この他、どのオブジェクトが最も多くのメモリーを保持するかを調べることもできます。メモリー・プロファイラでは、次の3つのビューにデータが表示されます。新規のオブジェクト/ガベージ・コレクション・レポート用の「クラス」と「アロケータ」、さらにヒープ・スナップショット用の「参照」ビューです。

「クラス」ビューには、新規のオブジェクト/ガベージ・コレクション・データがJavaクラス別に編成されて表示されます。どのクラスに大量のメモリーが割り当てられているかを検出し、メモリー・リークがないかスキャンするのに使用します。詳細

「アロケータ」ビューには、最も多くのメモリーを消費したスレッド・グループ、スレッドおよびメソッドが表示されます。詳細

「参照」ビューには、スナップショットの時点でアプリケーション・ヒープにあったクラス、オブジェクトおよびオブジェクトへの参照が階層表示されます。詳細

プロファイラは、「実行」メニューから起動します。コードの分析に使用するプロファイリングのモードを指定するには、「実行構成の編集」ダイアログのプロファイラ・オプション・ページを使用します。

ダイアログでは、プログラムをローカルにプロファイリングするのか、リモートからプロファイリングするのかを指定することもできます。「実行構成の編集」ダイアログのプロファイラ・ページで、プログラムをローカルにプロファイリングするにはプロファイラの接続パラメータを設定し、リモートからプロファイリングするには「リモート・プロファイル」パラメータを設定します。詳細

後で分析できるように、プロファイラ・セッションを保存し、開くことができます。方法


プロジェクトのプロファイリング
CPUプロファイリング
メモリー・プロファイリング
リモート・プロファイリング