Hitachi

 Hitachi Application Server V10 定義リファレンスWindows®用)


7.12.1 -XX:HitachiJITCompileMaxMemorySize

JITコンパイル時に確保するCヒープのメモリーサイズの上限値を指定します。

説明

JITコンパイル時に確保するCヒープのメモリーサイズの上限値を指定します。JITコンパイルによって確保するCヒープのメモリーが指定値を超えた場合、JavaVMログファイルにログを出力するとともに、以降のJITコンパイルを抑制します。JITコンパイル処理の対象となっていたJavaメソッドは、以降、インタープリターでだけ実行されるようになります。なお、JITコンパイルが抑制された場合でも、JavaVMは強制終了しないで、処理を続行します。

0を指定した場合、JITコンパイル時に確保するメモリーは上限値で制限されません。

なお、JITコンパイルはJavaVMの内部スレッド(JITコンパイラースレッド)で実行されます。JITコンパイラースレッドは2つあるため、このオプションで指定した上限値を2で割った値が、1つのJITコンパイラースレッドに対する上限値となります。

また、このオプションで上限値を設定した場合も、実際に使用できるCヒープがそれよりも少ないときには、上限値に達する前にCヒープ不足が発生することがあります。この場合、JavaVMは強制終了します。

前提オプション
  • -server

出力形式
[id][Thread: thread_id]<date>["thread_name" exceeded max memory size.]
[current_sizeK->new_sizeK/limit_size_per_threadK/limit_sizeK]
[compile_target][byte_code_size]

出力内容を次に説明します。

出力項目

出力内容

id

JMS(JavaVMログファイル識別子)。

thread_id

JITコンパイルを抑制したJITコンパイラースレッドのスレッドID。

date

JITコンパイルを抑制した日時。

-XX:+HitachiOutputMilliTimeオプションが指定された場合、ミリ秒単位で出力されます。

thread_name

JITコンパイルを抑制したJITコンパイラースレッドのスレッド名。

current_size

JITコンパイルを抑制したJITコンパイラースレッドの、現在のメモリー確保サイズ(単位:キロバイト)。

new_size

JITコンパイルを抑制したJITコンパイラースレッドの、現在のメモリー確保サイズと追加で確保しようとしたサイズの合計値(単位:キロバイト)。

limit_size_per_thread

1つのJITコンパイラースレッドの上限値(単位:キロバイト)。

limit_size

JITコンパイラースレッド全体の上限値(単位:キロバイト)。

compile_target

JITコンパイル処理の対象となっていたJavaメソッド。

byte_code_size

JITコンパイル処理の対象となっていたJavaメソッドのバイトコードのサイズ(単位:バイト)。

書式

-XX:HitachiJITCompileMaxMemorySize=整数値

指定できる値

整数値

型:Integer

JITコンパイル時に確保するメモリーの上限値を指定します。単位はバイトです。単位文字として、「k」(キロ)、「m」(メガ)、「g」(ギガ)も指定できます。指定できる範囲は次のとおりです。範囲外の値を指定した場合は、0が指定されます。

32ビット版のJavaVMの場合

0〜232-1(4294967295)

64ビット版のJavaVMの場合

0〜264-1(18446744073709551615)

0を指定した場合は、JITコンパイル時に確保するメモリーは上限値で制限されません。JITコンパイル中にCヒープ不足が発生した場合、JavaVMは強制終了します。

デフォルト値

定義項目の省略

-XX:HitachiJITCompileMaxMemorySize=0

出力例

オプションとして「-XX:HitachiJITCompileMaxMemorySize=536870912」を指定して、1つのJITコンパイラースレッドに対して262145キロバイトのCヒープを確保した場合に、上限値に達したときの出力例を示します。

[JMS][Thread: 0x03bf1150]<Wed Feb 24 14:33:58 2010>
["CompilerThread0" exceeded  max memory size.][262143K->262145K/262144K/524288K]
[test1.func][213]

注意事項