可能性の重複:
Real differences between “java -server” and “java -client”?java -serverフラグの動作は?
-serverオプションは(もしあれば)何-XXフラグを有効にしますか?ヒープサイズと使用するガベージコレクタの実装を制御していることは確かです。しかし、私は特定の最適化を可能にするような他のことをするかどうかはわかりません。
可能性の重複:
Real differences between “java -server” and “java -client”?java -serverフラグの動作は?
-serverオプションは(もしあれば)何-XXフラグを有効にしますか?ヒープサイズと使用するガベージコレクタの実装を制御していることは確かです。しかし、私は特定の最適化を可能にするような他のことをするかどうかはわかりません。
実際に-serverはガベージコレクタに影響を与えません。ほとんどのXXオプションはほとんど影響を受けません。
実際には何か:C2と呼ばれるよりスマートなコンパイラを実行します。これには、さらに多くの最適化(および最適化解除)とOSR(スタック置換)が含まれます。遅くなり、反復プロファイリングが遅くなります(C1では1k、C2では10k)。
総合的に知っておくべきことは、C2はもっと良いコンパイラ(30-100%+ピーク性能のファクタになります)ですが、コンパイル時とプロファイリングでは遅くなります。 C2は高速パスを検出するためにC1より多くのプロファイリングを行います。 C2は必要に応じてたくさんのインライン化とコードクローニングを行います。
しかし、Stackoverflowはホワイトペーパー全体の議論の場ではありません。
は更新のように見えますが、一番上の答えはかなり驚きです。詳細は全くありません。 – bestsss