7.18.8 -XX:MetaspaceSize
Metaspace領域に起因するFullGCの基準値を指定します。
説明
Metaspace領域に起因するFullGCの基準値を指定します。
Metaspace領域はロードされたクラス情報が格納される領域です。
Metaspace領域のサイズは、アプリケーションで必要なクラス情報のサイズから見積もることができます。見積もった値は、-XX:MetaspaceSizeオプション、および-XX:MaxMetaspaceSizeオプションに指定します。Metaspace領域のサイズを正しく指定することで、Metaspace領域のOutOfMemoryErrorの発生を防ぐことができます。また、-XX:MetaspaceSizeオプションと-XX:MaxMetaspaceSizeオプションに同じ値を指定することで、Metaspace領域に起因するFullGCの発生を抑止できます。
Metaspace領域のメモリー使用量は、アプリケーションが実際に使用しているサイズです。このため、-XX:MetaspaceSizeオプション、および-XX:MaxMetaspaceSizeオプションに指定した値のメモリーは使用されません。この特性から、Metaspace領域は次のようなチューニングもできます。
-
Metaspace領域のOutOfMemoryErrorの発生リスクを下げる
Metaspace領域の使用量が見積もり値以上に増加すると、Metaspace領域のOutOfMemoryErrorが発生することがあります。この発生リスクを下げるため、次のオプションには、見積もり時に余裕を持った値を指定してください。
-
-XX:MaxMetaspaceSize
-
-XX:CompressedClassSpaceSize
Metaspace領域の使用量がこれらのオプションの指定値を超えるまで、Metaspace領域のOutOfMemoryErrorは発生しません。
-
-
Metaspace領域に起因するFullGCの発生リスクを下げる
Metaspace領域の使用量が見積もり値以上に増加すると、Metaspace領域に起因するFullGCが発生することがあります。この発生リスクを下げるため、次のオプションには、見積もり時に余裕を持った値を指定してください。
-
-XX:MetaspaceSize
-
-XX:MaxMetaspaceSize
-
-XX:CompressedClassSpaceSize
Metaspace領域の使用量がこれらのオプションの指定値を超えるまで、Metaspace領域に起因するFullGCは発生しません。
-
書式
-XX:MetaspaceSize=size
指定できる値
- size
-
型:Integer
自然数の値を次に示す単位を使って指定します。
-
キロ「k」
-
メガ「m」
-
ギガ「g」
-
テラ「t」
指定できる範囲は次のとおりです。
- 32ビット版のJava VMの場合
-
256K〜232-1の整数値
- 64ビット版のJava VMの場合
-
256K〜264-1の整数値
なお、大文字・小文字は区別されません。
-
デフォルト値
- 定義項目の省略
-
- Windows x86 [client]の場合
-
-XX:MetaspaceSize=12M
- Windows x86 [server]の場合
-
-XX:MetaspaceSize=16M
- Windows x64 [server]の場合
-
-XX:MetaspaceSize=16M
- (凡例)
-
[client]:Java HotSpot Client VMが使用されることを示します。
[server]:Java HotSpot Server VMが使用されることを示します。