ReservedCodeCacheSize
(e InitialCodeCacheSize
) è un'opzione per il compilatore (just-in-time) della VM Hotspot Java. Fondamentalmente imposta la dimensione massima per la cache del codice del compilatore.
La cache può riempirsi, il che si traduce in avvisi come i seguenti:
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
È molto peggio se seguito da Java HotSpot(TM) Client VM warning: Exception java.lang.OutOfMemoryError occurred dispatching signal SIGINT to handler- the VM may need to be forcibly terminated
.
Quando impostare questa opzione?
- quando si verificano errori del compilatore Hotspot
- per ridurre la memoria necessaria alla JVM (e quindi rischiare errori del compilatore JIT)
Normalmente non cambieresti questo valore. Penso che i valori predefiniti siano abbastanza equilibrati perché questi problemi si verificano solo in occasioni molto rare (nella mia esperienza).