ReservedCodeCacheSize
(およびInitialCodeCacheSize
) は、Java Hotspot VM の (ジャストインタイム) コンパイラのオプションです。基本的に、コンパイラのコード キャッシュの最大サイズを設定します。
キャッシュがいっぱいになると、次のような警告が表示されます。
Java HotSpot(TM) 64-Bit Server VM warning: CodeCache is full. Compiler has been disabled.
Java HotSpot(TM) 64-Bit Server VM warning: Try increasing the code cache size using -XX:ReservedCodeCacheSize=
Code Cache [0x000000010958f000, 0x000000010c52f000, 0x000000010c58f000)
total_blobs=15406 nmethods=14989 adapters=362 free_code_cache=835Kb largest_free_block=449792
が続くとさらに悪化しJava HotSpot(TM) Client VM warning: Exception java.lang.OutOfMemoryError occurred dispatching signal SIGINT to handler- the VM may need to be forcibly terminated
ます。
このオプションをいつ設定しますか?
- Hotspot コンパイラに障害が発生した場合
- JVM が必要とするメモリーを削減する (したがって、JIT コンパイラーの失敗のリスクを冒す)
通常、この値は変更しません。この問題は非常にまれにしか発生しないため(私の経験では)、デフォルト値は非常にバランスが取れていると思います。