GCの仕組み http://wiki.livedoor.jp/author_nari/d/GC http://www.atmarkit.co.jp/fjava/rensai3/devedge03/devedge03_1.html http://www.whitemark.co.jp/tec/java/javagc.html {{ref @IT:Javaパフォーマンスチューニング 第3回.pdf}} {{ref GC.pdf}} !!GC に関連する主な Java の起動オプション ,-verbose:gc,一般的な GC 情報を出力 ,-Xloggc:filename,GC の出力情報をファイル filename に保存 ,-XX:+PrintGCDetails,New 領域、Old 領域の詳細情報を出力 ,-XX:+PrintTenuringDistribution,オブジェクトの寿命の情報 ,-XX:+PrintHeapAtGC,GC 前後のヒープ領域の情報 ,-XX:+TraceGen0Time,New 領域の GC の回数、総時間、平均時間 ,-XX:+TraceGen1Time,Old 領域の GC の回数、総時間、平均時間 !-verbose:gc [GC 512K->276K(1984K), 0.0048112 secs] [GC 780K->517K(1984K), 0.0067000 secs] [GC 625K->566K(1984K), 0.0033630 secs] [GC 1078K->1077K(1984K), 0.0016818 secs] 上記の例より以下のデータ ( 1 行目のデータ ) を基に情報の説明を記述します。 [GC 512K->276K(1984K), 0.0048112 secs] ■ GC ・・・GC の種類を表示します。 「GC」 と表示されれば主に New 領域が対象の Scavenge GC です。 「FULL GC」と表示されれば New 、Old 領域が対象の FULL GC です。 ■ 512K ・・・GC 前のオブジェクトのサイズ ■ 276K ・・・GC 後のオブジェクトのサイズ ■ (1984K)・・全体のヒープ領域 ( New 領域 ) ■ 0.0048112 secs・・・この GC の処理時間 !-XX:+PrintGCDetails 3.125: [GC 3.125: [DefNew: 3328K->384K(3712K), 0.0112500 secs] 8168K->5998K(16000K), 0.0113291 secs] 4.539: [GC 4.539: [DefNew: 3712K->4K(3712K), 0.0032661 secs] 9326K->5999K(16000K), 0.0033515 secs] 10.668: [GC 10.669: [DefNew: 3332K->3K(3712K), 0.0015267 secs] 9327K->5999K(16000K), 0.0015929 secs] 12.103: [GC 12.103: [DefNew: 3331K->3K(3712K), 0.0003727 secs] 9327K->5999K(16000K), 0.0004336 secs] 13.539: [GC 13.539: [DefNew: 3331K->4K(3712K), 0.0003766 secs] 9327K->5999K(16000K), 0.0004347 secs] 18.199: [GC 18.199: [DefNew: 3332K->10K(3712K), 0.0012516 secs] 9327K->6005K(16000K), 0.0013153 secs] 上記の例より以下のデータ ( 1 行目のデータ ) を基に情報の説明を記述します。 3.125: [GC 3.125: [DefNew: 3328K->384K(3712K), 0.0112500 secs] 8168K->5998K(16000K), 0.0113291 secs] 上記のデータの説明 ■ 3.125・・・JVM が起動してから GC が発生した時間 ■ GC ・・・GC の種類を表示します。 「GC」 と表示されれば主に New 領域が対象の Scavenge GC です。 「FULL GC」と表示されれば New 、Old 、Permanent 領域が対象の FULL GC です。 New 領域の情報 ■ DefNew・・・New 領域に対するGCを表す。以下の値はNew 領域が対象。 ■ 3328K ・・・GC 前のオブジェクトのサイズ ( New 領域 ) ■ 384K ・・・GC 後のオブジェクトのサイズ ( New 領域 ) ■ (3712K) ・・New 領域のヒープサイズ ■ 0.0112500 secs・・・この New 領域の GCにかかった時間 ヒープ全体の情報 ■ 8168K ・・・GC 前のオブジェクトのサイズ ■ 5998K ・・・GC 後のオブジェクトのサイズ ■ (16000K)・・全体のヒープサイズ ■ 0.0113291 secs・・・この GC にかかった時間 {{category2 プログラミング言語,Java}}