付録Aチューニングのフラグ

 

A.1 JITコンパイラ

フラグ意味利用するべき場合参考
-serverサーバーコンパイラを使用する長期間実行されるアプリケーションで、高いパフォーマンスが必要な場合「4.1.1 JFRの概要」
-clientクライアントコンパイラを使用する起動処理の時間が最も重要な場合同上
-XX:+TieredCompilation階層的コンパイルを使用する。クライアントコンパイラとサーバーコンパイラが併用される十分なネイティブメモリを持っており、可能なかぎりパフォーマンスを高めたい場合同上
-XX:ReservedCodeCacheSize=NJITコンパイラによってコンパイルされるコードのための領域を予約する。メガバイト単位で指定コードキャッシュがいっぱいになったという警告が表示された場合や、階層的コンパイルを使用する場合「4.4.1 コードキャッシュのチューニング」
-XX:InitialCodeCacheSize=NJITコンパイラによってコンパイルされるコードのための領域について、初期サイズをメガバイト単位で指定するコードキャッシュのためのメモリを事前に確保したい場合(あまり使われない)同上
-XX:CompileThreshold=Nメソッドやループがコンパイルされるために必要な実行回数を指定するサーバーコンパイラを使用している場合、多くのメソッドが早期にコンパイルされることになる。階層的コンパイルを使用していない場合には、このことがメリットになる可能性もある「4.4.2 コンパイルのしきい値」
-XX:+PrintCompilationJITコンパイラが行った処理についてログを出力する重要なメソッドがコンパイルされていないと考えられる場合や、単にコンパイラの振る舞いを知りたい場合 ...

Get Javaパフォーマンス now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.