Interstage Application Server チューニングガイド |
目次
索引
![]() ![]() |
第8章 JDK/JREのチューニング | > 8.5 チューニング方法 |
本節では、Javaヒープのチューニング方法および、チューニングによる影響範囲を説明します。
Javaヒープの各領域のサイズは、表1に示すオプションで指定することができます。
なお、メモリ割り当てプールのデフォルトの初期値および最大値を、表2に示します。
また、Permanent世代領域のデフォルトの初期値および最大値を、表3に示します。
オプション |
オプションの機能 |
-Xms |
メモリ割り当てプールの初期値を指定します。 |
-Xmx |
メモリ割り当てプールの最大値を指定します。 |
-XX:NewSize |
New世代領域のヒープサイズを指定します。 |
-XX:MaxNewSize |
New世代領域の最大ヒープサイズを設定します。 |
-XX:NewRatio |
New世代領域とOld世代領域のサイズ比率を指定します。 |
-XX:SurvivorRatio |
New世代領域を構成するEden領域とSurvivor領域のサイズ比率を指定します。 |
-XX:TargetSurvivorRatio |
ガーベジコレクション(GC)処理後の生存オブジェクトがSurvivor領域を占める割合を、指定したパーセンテージ値に調整します。 |
-XX:MaxPermSize |
Permanent世代領域の最大サイズを指定します。 |
|
OS |
初期値 |
最大値 |
JDK/JRE 1.3 |
Solaris |
3.5MB |
64MB |
Solaris以外 |
2.0MB |
||
JDK/JRE 1.4 |
Solaris、RHEL-AS4(IPF) |
3.5MB |
64MB |
Solaris、RHEL-AS4(IPF)以外 |
2.0MB |
|
初期値 |
最大値 |
JDK/JRE 1.3 |
1MB |
32MB (Java HotSpot Client VM) |
JDK/JRE 1.4 |
4MB (Java HotSpot Client VM) |
64MB |
Javaヒープをチューニングする際、次の方針があります。
Javaヒープ全体のサイズを変更した場合の影響範囲を、次に示します。
overcommit memory機能が有効な場合の注意事項
「overcommit memory機能」が有効な場合、Linuxは、Javaヒープの各領域の最大値に相当する仮想メモリ資源を、Java VMの起動時に、Javaプロセスに対して予約します。
このため、-Xms値と-Xmx値を異なる値にしてJavaプロセスを起動する場合、本機能の有効/無効によって、Javaプロセス起動時にJavaヒープとして必要となる仮想メモリの量が異なります。
- overcommit memory機能が無効、またはovercommit memory機能がないシステムの場合
「Javaヒープ用仮想メモリ量」=「-Xms値」+「Perm域初期値」
- overcommit memory機能が有効なシステムの場合
「Javaヒープ用仮想メモリ量」=「-Xmx値」+「-XX:MaxPermSize値」
この結果、仮に同量の仮想メモリ資源を持つシステムの場合であっても、本機能の有効/無効によって、同時に起動できるJavaプロセスの数が異なる場合があります。
Linuxで仮想メモリ資源の見積もりを行なう場合には、overcommit memory機能の有無に注意してください。
目次
索引
![]() ![]() |