9

Java 7u40 に付属している新しいJava Mission Control Profiler で遊んでいますが、プロファイルの割り当てとオブジェクト統計の収集を行うことができません。何をしても、[メモリ] -> [オブジェクト統計]ウィンドウに統計が表示されません。

次のコマンドは、コレクションを開始します。

jcmd <pid> JFR.start duration=60s settings=profile filename=alloc-prof.jfr

Java Mission Controlのドキュメントには、オブジェクトのプロファイリングを有効にするための特定のオプションについては言及されていません。私は自分のプロファイルを作成して設定しようとしました:

  <flag name="heap-statistics-enabled" label="Heap Statistics">true</flag>
  <flag name="allocation-profiling-enabled" label="Allocation Profiling">true</flag>

しかし、まだオブジェクト統計は収集されていません。

4

1 に答える 1

10

Mission Control で利用可能なテンプレート マネージャーを使用します。

Windows -> Template Manager に移動してテンプレートをインポートし、Heap Statistics と Allocation Profiling を確認して、エクスポートします。終わり!

jfc-file を手動で編集したい場合, control-element 内の要素が JVM によって読み取られないことを知っておくとよいでしょう.コントロール属性を持つもの)

手動で編集するには、次を変更する必要があります。

java/object_alloc_in_new_TLAB を true に設定

java/object_alloc_outside_TLAB を true に設定

vm/gc/detailed/object_count を true に設定

2 つのオブジェクト カウント イベントがあることに注意してください。object_count_after_gc を使用すると、GC 時間が増加します。代わりに上記のものを選択すると、記録チャンクごとに追加の GC が 1 つ取得されます (通常はこれで十分です)。

于 2013-09-27T21:52:53.253 に答える