メモリ統計:Memory Statistics
メモリ統計:Memory Statistics
メモリ統計ではJVM上に存在するインスタンス数やそれらが占有するメモリサイズを調査することが可能です。必要以上にメモリサイズを占有しているクラスを特定して、パフォーマンスの向上をはかったり、メモリリークの調査に役立てることができます。
それではメモリ統計ビューを開いてみましょう。
図1の「Profiling Monitor」ビューで「Basic Memory Analysis」をダブルクリックするか、対象のアプリケーションを右クリックして「Open With → Memory Statistics」を選択、またはツールバーのボタンからメモリ統計ビューを開くことができます(図3)。
図3のメモリ統計ビューに表示されいる「Total Instances」はインスタンス数の合計をあらわします。「Live Instances」はガベージ・コレクションの対象となっていないインスタンス数を、「Collected」はガベージ・コレクションの対象となった数 を示します。
「Total Size」はガベージ・コレクションの対象も含む合計サイズ、「Active Size」は「Live Instances」の合計サイズを表します。
実行統計:Execution Statistics
実行統計ではパッケージ、クラス、インスタンス、メソッド単位におけるそれぞれの処理時間を参照することができます。パフォーマンス・チューニングを行う際などに有効です。
それでは実行統計ビューを開いてみましょう。
実行統計ビューを開くには「Profiling Monitor」ビューで「Execution Time Analysis」をダブルクリックするか、対象アプリケーションを右クリックして「Open With→Execution Statistics」を選択してください。ツールバーのボタンからも開くことができます(図4)。
図4の実行統計ビューに表示されている「Base Time」はメソッドの実行時間です。対象メソッドがさらにほかのメソッドを呼び出している場合、その実行時間は除きます。
「Average Time」はBase Timeの平均時間を示します。「Cumulative Time」はメソッドの実行時間ですが、対象メソッドがほかのメソッドを呼び出している場合はその実行時間も含みます。もし1つもほかのメソッドを呼び出していない場合は「Base Time」とほぼ等しくなります。「Calls」はメソッドの呼び出し回数を示します。

