ReservedCodeCacheSize
(और InitialCodeCacheSize
) जावा हॉटस्पॉट वीएम के (सिर्फ-इन-टाइम) संकलक के लिए एक विकल्प है। मूल रूप से यह संकलक के कोड कैश के लिए अधिकतम आकार निर्धारित करता है।
कैश पूर्ण हो सकता है, जिसके परिणामस्वरूप निम्न की तरह चेतावनी होती है:
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
।
इस विकल्प को कब सेट करें?
- जब हॉटस्पॉट संकलक की विफलता हो रही है
- जेवीएम द्वारा आवश्यक मेमोरी को कम करने के लिए (और इसलिए जेआईटी कंपाइलर विफलताओं को जोखिम में डालना)
आम तौर पर आप इस मान को नहीं बदलेंगे। मुझे लगता है कि डिफ़ॉल्ट मान काफी अच्छे हैं क्योंकि यह समस्या बहुत ही कम मौकों (मेरे एक्सपीरियंस में) पर होती है।