JDK 9 JavaVMオプション¶
メモ¶
Java SE 9ではHotSpot Client VMが無くなるとのこと
この後、バイナリリリースから32bit版がなくなりました。小さなプログラム向きのJavaVMオプション検討を記載。
オプション指定例¶
小さいアプリケーション向け¶
64bit JavaVMのデフォルトは、計算機リソースをフルに使う設定となっています。
小さいアプリケーションや、多数のアプリケーションを動作する場合、この設定では計算機リソースを枯渇させてしまいます。
設定項目 | デフォルト値 | 推奨値 | 備考 |
---|---|---|---|
TieredStopAtLevel | 4 | 1 | TieredStopAtLevel |
CompileThreshold | 10,000 | 1,500 | |
InitialCodeCacheSize | 2,496KB | 160KB | |
ReservedCodeCacheSize | 240MB | 32MB | |
CICompilerCount | CPU数による(6コアの場合 3) | 2 | CICompileerCount |
スタックサイズ(-Xss) | 1MB | 256KB | |
ヒープサイズ(-Xms) | 物理メモリの1/64 | 32MB | |
ヒープサイズ(-Xmx) | 物理メモリの1/4 | 256MB | |
シリアルGCの使用 | false | true |
メモリ、スレッド使用状況の比較¶
種類 | デフォルト設定 | JVMオプション変更 |
---|---|---|
Performance | ||
Threads |
チューニング前後で、使用メモリ(Windows OS上のプロセスの Private Bytes)が400MB→100MB と削減されています。
スレッドの数は、44→29と削減されています。