যে কোনও পদ্ধতির আপনাকে মোটামুটি একই নম্বর দেওয়া উচিত। -X..m
-X..x
সমস্ত প্রজন্মের জন্য গাদা বরাদ্দ করা সর্বদা একটি ভাল ধারণা । তারপরে আপনি গ্যারান্টি দিতে পারেন এবং কী পরামিতিগুলি পাস হয়েছে এবং সেজন্য ব্যবহৃত হচ্ছে তা দেখতে PS করতে পারেন।
প্রকৃত মেমরি ব্যবহারের জন্য, আপনি মোটামুটি ভিআইআরটি (বরাদ্দ এবং ভাগ করা) এবং আরএস (প্রকৃত ব্যবহৃত) জাস্টট মানগুলির সাথে তুলনা করতে পারেন:
জাভা 8 এর জন্য, এই মানগুলির জন্য জাস্ট্যাট দেখুন । ধরে নিচ্ছি আপনি কোনও এমএম্যাপ বা ফাইল প্রসেসিং ছাড়াই একটি সাধারণ ক্লাস চালাচ্ছেন।
$ jstat -gccapacity 32277
NGCMN NGCMX NGC S0C S1C EC OGCMN OGCMX OGC OC MCMN MCMX MC CCSMN CCSMX CCSC YGC FGC
215040.0 3433472.0 73728.0 512.0 512.0 67072.0 430080.0 6867968.0 392704.0 392704.0 0.0 1083392.0 39680.0 0.0 1048576.0 4864.0 7225 2
$ jstat -gcutil 32277
S0 S1 E O M CCS YGC YGCT FGC FGCT GCT
6.25 0.00 7.96 18.21 98.01 95.29 7228 30.859 2 0.173 31.032
সর্বাধিক :
NGCMX + S0C + S1C + EC + OGCMX + MCMX + CCSMX
3433472 + 512 + 512 + 67072 + 6867968 + 1083392 + 1048576 = 12 GB
(মোটামুটি কাছাকাছি এবং ভিআইআরটি মেমরির নীচে)
সর্বাধিক (ন্যূনতম, ব্যবহৃত):
215040 + 512 + 512 + 67072 + 430080 + 39680 + 4864 = ~ 1GB
(মোটামুটি আরইএস মেমরির কাছাকাছি)
"আমাকে এ সম্পর্কে উদ্ধৃতি দেবেন না" তবে ভিআইআরটি মেমি বরাদ্দ করা ম্যাক্স মেমোরির প্রায় কাছাকাছি বা বেশি তবে যতক্ষণ স্মৃতি ব্যবহার করা হচ্ছে শারীরিক স্মৃতিতে ফ্রি / উপলভ্য, জেভিএম মেমরির ব্যতিক্রম ছুঁড়ে না। বাস্তবে, জেভিএম স্টার্টআপে এমনকি ওএসে অদলবদল বন্ধ থাকা সত্ত্বেও সর্বাধিক মেমরির পরীক্ষা করা হয় না memory ভার্চুয়াল মেমরিটি একটি জাভা প্রক্রিয়া দ্বারা সত্যই কী ব্যবহৃত হয়েছিল তার আরও ভাল ব্যাখ্যা এখানে আলোচনা করা হয়েছে ।
jstat
কোনও জেভিএমের সামগ্রিক মেমরির ব্যবহারটি যাচাই করার জন্য কোনও বিকল্পগুলির ব্যবহার করা উচিত তা কি প্রস্তাবনা রয়েছে ? আসুন আপনার সাথে জেভিএম শুরু বলেXms=4g
এবংXmx=4g
আর তোমাদের দেখতে কত যে স্মৃতি ইতিমধ্যেই ব্যবহার হয়?