2009-09-29 11 views
65

ग्रहण 3.4 का स्मृति उपयोग छत के माध्यम से उस बिंदु तक है जहां यह एक मुद्दा बन रहा है।एक्लिप्स के मेमोरी उपयोग को कैसे कम करें?

मेरे पास एक साधारण ब्लैकबेरी प्रोजेक्ट लोड किया गया है और उपयोग स्कीयरॉक लगभग 400 एमबी तक कभी-कभी अधिक होता है। क्या ऐसा कुछ है जो इसे नीचे लाने के लिए किया जा सकता है?

+3

अब इस प्रश्न पर वापस देखकर, मुझे यह कहना होगा कि अगर मैं अपना ग्रहण स्मृति उपयोग 400 एमबी तक प्राप्त कर सकता हूं तो मुझे खुशी होगी। अभी मैं इसे 1 जीबी तक पहुंचाने के लिए संघर्ष कर रहा हूं (प्लस एक और 300 एमबी यदि आप वास्तव में मेरी परियोजनाओं को चलाने के लिए टोमकैट की एक प्रति शामिल करते हैं ...)। – Jules

उत्तर

74

ग्रहण 3.4 पिछले संस्करणों की तुलना में बहुत अधिक स्मृति का उपभोग कर सकते, courtesy the spellchecker plug-in

आप विंडो -> प्राथमिकताएं -> सामान्य -> ​​संपादकों -> पाठ संपादकों -> वर्तनी, और 'शीर्षक वर्तनी जांच सक्षम करें' बॉक्स शीर्षक को अनचेक करके प्लग-इन को बंद कर सकते हैं।

बेशक, बड़े ढेर के आकार और बेहतर कचरा कलेक्टरों का उपयोग करने की पेशकश की गई युक्तियां आपको भी अच्छी तरह से करेंगी।

+8

मेरे लिए काम नहीं किया है। अभी भी 900-930 एमबी पर। मेरा मतलब है कि यह कर सकता है wtf। – TheRealChx101

+3

ग्रेट उत्तर। 1 प्लग-इन नीचे, लगभग 50 अन्य जिन्हें मैंने कभी नहीं सुना है/कभी भी जाने के लिए उपयोग नहीं किया है। (स्वयं को ध्यान दें, IntelliJ का उपयोग शुरू करें) – 8bitjunkie

+8

2016 और अभी भी इस समस्या का सामना कर रहे हैं। मेरा मतलब है कि मेरी राम अंतरिक्ष का 1 जीबी ग्रहण पर कब्जा कर लिया गया है। वर्तनी परीक्षक प्लगइन को बंद करना या तो मदद नहीं करता है। – Lucky

7

जबकि आप शायद कॉन्फ़िगरेशन के साथ टिंकर, विभिन्न प्लगइन्स आदि को हटाकर, यह अधिक मेमोरी खरीदने के लिए अधिक लागत प्रभावी होने की संभावना है। वर्तमान में आपके पास कितना है? मैं एक डेवलपर मशीन पर विचार करूँगा जिसमें 2 जीबी से कम मेमोरी स्पेक के तहत होगी, और मुझे संदेह है कि कई लोग इसे दोगुना कर देंगे ...

+2

अधिक सहमत नहीं हो सका। 1 जीबी रैम $ 20-30 जितना कम है। आपका समय कितना कीमती है? ग्रहण में काम करने के लिए प्लगइन्स का संग्रह प्राप्त करना मुश्किल से काम करना मुश्किल है (तर्कसंगत रूप से) अनावश्यक रूप से। – cletus

+2

मुझे 2 जीबी पर अधिकतम किया गया है (यह एक पुराना लैपटॉप है)। समस्या यह है कि ब्लैकबेरी सिम्युलेटर लोड होने के बाद, विजुअल स्टूडियो (वेब ​​सेवाएं) और क्रोम (वेब ​​पर सामान देखने के लिए), लैपटॉप क्रॉल पर आता है। लेकिन ग्रहण अब तक का सबसे बड़ा अपराधी है। यह 3.3 या 3.2 संस्करणों के साथ इतना बुरा नहीं था। – AngryHacker

+0

यदि ग्रहण 400 एमबी पर सबसे बड़ा अपराधी है और आपके पास 2 जीबी है, तो आपको * उस * स्मृति पर छोटा नहीं चलना चाहिए। क्या यह निश्चित रूप से स्मृति है कि यह समस्या है? क्या आप स्वैप कर रहे हैं –

5

ग्रहण के आधुनिक संस्करणों को अपनी बात करने के लिए काफी रैम की आवश्यकता है। लेकिन अभी भी किसी भी आधुनिक मशीन पर बहुत तेजी से चलना चाहिए।

मान लें कि आपके पास पर्याप्त भौतिक मेमोरी है (2 जीबी ठीक है जब तक कि आपके पास कई अन्य प्रक्रियाएं चल रही न हों, या आप आरएडी का उपयोग कर रहे हों), सेटिंग्स को ट्वीव करने के कुछ सुझावों के लिए इस आलेख को Eclipse's memory usage पर देखें। दो सबसे आम अपराधी एक्सएमएक्स और/या मैक्सपर्मसाइज बहुत कम सेट किए जा रहे हैं (एक्सएमएक्स डिफ़ॉल्ट 256 एम और मैक्सपर्मसाइज 64 एम तक डिफ़ॉल्ट है)।

आप आदेश पंक्ति तर्क पास करके या ग्रहण स्थापित स्थान में eclipse.ini को ट्वीव करके मानों को संशोधित करते हैं।

आप कुछ इस तरह से खत्म करना चाहिए:

... 
-vmargs 
-Xms128m 
-Xmx1024m 
-XX:MaxPermSize=128m 
+5

लिंक टूटा हुआ है। –

+0

MaxPermSize अब –

2

यदि 400 एमबी रैम आपके लिए एक बड़ा मुद्दा है, तो आप एक और आईडीई आज़मा सकते हैं। ग्रहण राज्य की जानकारी के लॉट स्टोर करता है, जिनमें से कुछ या जिनमें से आपको वास्तव में आवश्यकता नहीं है। यह एक डिजाइन पसंद है।

अभी, मेरे पास ग्रहण और क्यूटी क्रिएटर दोनों में एक ही प्रोजेक्ट खुला है: स्वच्छ पुनर्निर्माण के बाद, ग्रहण 156 एमबी रैम का उपयोग करता है, क्यूटी निर्माता 66 एमबी से खुश है।

6

मेरा ग्रहण 800 एमबी निवासी ले रहा है, और 2 जीबी आभासी (इसका हिस्सा शायद बाहर निकला है)। जावा एक हॉग हो सकता है, यह हर समय जावा खराब प्रेस दे रहा है।

हालांकि, वहां कुछ ऐसा है जो बहुत से लोगों को नहीं पता: वृद्धिशील कचरा कलेक्टर। -Xincgc दुष्प्रभाव यह है कि यह समय-समय पर सिस्टम को स्मृति स्मृति देता है। डिफ़ॉल्ट रूप से जावा बस लेता है और लेता है, और जब इसे स्मृति की आवश्यकता नहीं होती है, तो यह इसे अपने लिए रखती है। incgc एक अलग रणनीति है जहां यह मानना ​​अधिक उचित हो जाता है कि स्मृति को बिना किसी परेशानी के सिस्टम को वापस सौंप दिया जा सकता है। हालांकि यह प्रदर्शन को प्रभावित कर सकता है।

कई कचरा संग्रह सेटिंग्स हैं। आप जीसी को संभालने के लिए कई धागे भी रख सकते हैं। समांतर जीसी वह करता है। यकीन नहीं है कि अगर वह एक हाथ वापस याद करता है, तो ऐसा मत सोचो।

+0

और ग्रहण के लिए कचरा कलेक्टर विकल्प कैसे बदलें? – Matthieu

+3

चीजें बदल गई हैं। जावा 8 में डिफ़ॉल्ट जीसी अब एक पीढ़ी का कचरा कलेक्टर है जो सिस्टम को स्मृति वापस ले जाता है। अब आप इसके साथ उपहास करने के लिए ... – Mike

+0

मेरे मामले जावा में 8 3GB से अधिक रखने के लिए जब वास्तविक उपयोग 0.5GB से भी कम है खुश है चाहता हूँ, इसलिए दुर्भाग्यवश मैं इसके साथ नकली करने की आवश्यकता है। – nsandersen

2

आप विंडोज 7 पर जेडीके के 64 बिट संस्करण के साथ ग्रहण के 64 बिट संस्करण को आजमा सकते हैं। उन दोनों ने तीसरे पक्ष के फ्रेमवर्क के साथ कुछ अजीब मुद्दों का सामना किया है जिनके साथ मुझे काम करना है। ओरेकल से 32-बिट जेआरॉकिट (अब मुफ्त) लगता है और स्मृति पर थोड़ा बेहतर लगता है।

यह मेरा ग्रहण सराय

-startup 
plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar 
--launcher.library 
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.2.R36x_v20101222 
-nosplash 
org.eclipse.platform 
--launcher.XXPermSize 
512m 
--launcher.XXMaxPermSize 
512m 
--launcher.defaultAction 
openFile 
-vm 
C:/Program Files (x86)/Java/jrockit-jdk1.6.0_31-R28.2.3-4.1.0/jre/bin 
-showsplash 
org.eclipse.platform 
--launcher.XXMaxPermSize 
256m 
--launcher.defaultAction 
openFile 
-vmargs 
-Xquickstart 
-XX:+AggressiveHeap 
-XX:+AggressiveOpts 
-XX:+UseParallelOldGC 
-XX:ParallelGCThreads=2 
-XX:ThreadPriorityPolicy=1 
-Xverify:none 
-Xms1100m 
-Xmx1100m 

मैं 32 बिट JRockit JDK जो एक छोटे से तेजी से ग्रहण के लिए लगता है पर स्विच किया है: यह मेरा Eclipse.ini सेटिंग है। मैं बंद करता हूं और मुझे आवश्यकता से अधिक स्थापित नहीं करता है। प्रत्येक अलग प्रकार के ऐप विकास के लिए (एंड्रॉइड, जे 2 ईई, बस वसंत, ...) मेरे पास अलग ग्रहण स्थापनाएं हैं। हार्ड ड्राइव अंतरिक्ष सस्ता है। तब मेरे पास सिर्फ एक प्लगइन हो सकता है जो मुझे प्रत्येक के लिए चाहिए। अगर मैं उनका उपयोग नहीं कर रहा था तो मैं कभी भी एंड्रॉइड टूल्स लोड नहीं करना चाहूंगा। एसटीएस केवल स्प्रिंग सामान के लिए भी अच्छा है और मेरे पास सिर्फ ओपनशफ्ट क्लाउड काम के लिए एक है।

+0

मैं थोड़ा उलझन में हूँ, जैसा कि आप पहले --launcher.XXMaxPermSize 512M और फिर --launcher.XXMaxPermSize 256M (और डुप्लिकेट लाइनों की एक जोड़ी है, यानी defaultAction, और फिर showsplash के साथ एक साथ nosplash)। क्या यह पहली कॉन्फ़िगरेशन का उपयोग करता है? – jambriz

+0

इसमें दूसरे स्थान नहीं होना चाहिए। मैंने फिर से जांच की और मेरे वर्तमान में यह नहीं है।इसके अलावा यदि आप जेडीके 8 अलग-अलग पैरामीटर –

3

ग्रहण लुना में 4.4.1 ग्रहण में मेरी स्मृति उपयोग को काटने की कोशिश कर रहा था। मैं 600 एमबी से 300 एमबी तक मेरा दाढ़ी मारने में कामयाब रहा। मैंने निम्नलिखित किया:

  • स्टार्टअप पर सक्रिय प्लगइन्स को बंद कर दिया जो मैं उपयोग नहीं कर रहा था। विंडोज> वरीयताएँ> सामान्य> स्टार्टअप और शटडाउन

  • बंद परियोजनाएं मैं उस समय काम नहीं कर रहा था।

यहाँ मिले संकेत/सुझाव: http://blog.elijaa.org/2010/09/20/tricks-to-speed-up-eclipse-php-helios-pdt-2-2/

5

जाँच हो रही है General -> Show heap status इस

Eclipse heap status bar

नीचे पट्टी में

सक्षम हो जाएगा। इस तरह आप कचरा कलेक्टर पर मैन्युअल रूप से कचरा कलेक्टर चला सकते हैं जब भी आप कचरा कैन पर क्लिक करके चाहते हैं। यह एक फिक्स नहीं है, एक वर्कअराउंड की तरह, लेकिन इससे बड़े पैमाने पर मेरे रैम/सीपीयू उपयोग को कम करने में मदद मिली।

+1

का उपयोग कर रहे हैं तो इससे मुझे यह पहचानने में मदद मिली कि आवंटित 4 जीबी रैम ग्रहण करने के लिए वास्तव में इस्तेमाल नहीं किया जा रहा था, भले ही ओएस ने दिखाया कि 4 जीबी उपयोग में था। मैंने अन्य अनुप्रयोगों के लिए रैम को मुक्त करने में सहायता के लिए ग्रहण के लिए आवंटित रैम की मात्रा को कम कर दिया। – Navigatron

संबंधित मुद्दे