Java/JavaVM

Last-modified: 2013-02-08 (金) 18:20:06

Server-classマシン

http://docs.oracle.com/javase/1.5.0/docs/guide/vm/server-class.html

Java 5以降。

Server-classマシンとは
最低2CPU、かつ2GBの物理メモリのあるマシン

ServerVM / ClientVM

Java 5以降JavaVMにはServerVM、ClientVMの2種類のVMがある。
それぞれjava起動オプションに-server、-clientを指定する。


"-server"、"-client"を指定しない場合

i586 Windows
ClientVM固定
i586 Linux
Server-classマシンはServerVM、
Server-classマシンでなければClientVMに自動設定される
64bit SPARC Solaris、AMD64
ServerVM固定

ヒープサイズ

http://docs.oracle.com/javase/1.5.0/docs/guide/vm/gc-ergonomics.html
Java 5 以降、ServerVMを実行しているServer-classマシンでは、GCがシリアルコレクタ(-XX:+UseSerialGC)から
パラレルコレクタ(-XX:+UseParallelGC)に変更される。


また、パラレルコレクタ(-XX:+UseParallelGC)が適用されたServer-classマシンでは(ServerVM/ClientVMどちらも)
初期ヒープ、最大ヒープが以下に変更される。

初期ヒープ
物理メモリサイズの1/64か、理にかなったサイズの小さい方
最大ヒープ
物理メモリサイズの1/4か、1GBの大きい方

※ それぞれ-Xms、-Xmxで上書き可能。

理にかなったサイズってなんだ?