मैं स्वैपनेस को कैसे कॉन्फ़िगर करूं?

मुझे स्वैपनेस को कॉन्फ़िगर करने के लिए चरण-दर-चरण, सरल और आसान तरीका चाहिए ।

लिनक्स कर्नेल एक ट्विकेबल सेटिंग प्रदान करता है जो यह नियंत्रित करता है कि स्वैप फ़ाइल का उपयोग कितनी बार किया जाता है, जिसे स्वैपनेस कहा जाता है ।

की एक अदला-बदली सेटिंग शून्य इसका मतलब है कि डिस्क को तब तक टाला जाएगा जब तक कि बिल्कुल आवश्यक न हो (आप मेमोरी से बाहर हो जाते हैं), जबकि एक स्वैपनेस सेटिंग 100 इसका मतलब है कि प्रोग्राम लगभग तुरंत डिस्क पर स्वैप किए जाएंगे ।

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

one@onezero:~$ cat /proc/sys/vm/swappiness60

जैसा कि मेरे पास 4 जीबी रैम है, मैं इसे 10 या 15 तक बंद करना चाहूंगा । स्वैप फ़ाइल का उपयोग केवल तभी किया जाएगा जब मेरी रैम का उपयोग आसपास हो 80 या 90 प्रतिशत । सिस्टम स्वैपनेस मान बदलने के लिए, खोलें /etc/sysctl.conf के रूप में जड़. फिर, इस लाइन को फ़ाइल में बदलें या जोड़ें:

vm.swappiness = 10

परिवर्तन लागू करें ।

sudo sysctl -p

जब आपका सिस्टम अभी भी चल रहा हो तो आप मान भी बदल सकते हैं:

sysctl vm.swappiness=10

आप चलाकर भी अपना स्वैप साफ़ कर सकते हैं swapoff -a और फिर swapon -a एक ही प्रभाव को प्राप्त करने के लिए रिबूट करने के बजाय रूट के रूप में ।

अपने स्वैप सूत्र की गणना करने के लिए:

free -m (total) / 100 = AA * 10root@onezero:/home/one# free -m             total       used       free     shared    buffers     cachedMem:          3950       2262       1687          0        407        952-/+ buffers/cache:        903       3047Swap:         1953          0       1953

तो कुल 3950 / 100 = 39.5 * 10 = 395 है

तो इसका क्या मतलब है कि जब 10 % (395 एमबी) रैम बचा है तो यह स्वैप का उपयोग करना शुरू कर देगा ।


मदद । उबंटू । स्वैप

स्वैपनेस क्या है

स्वैपनेस पैरामीटर भौतिक मेमोरी से बाहर और स्वैप डिस्क पर प्रक्रियाओं को स्थानांतरित करने के लिए कर्नेल की प्रवृत्ति को नियंत्रित करता है । क्योंकि डिस्क रैम की तुलना में बहुत धीमी होती है, इससे सिस्टम और एप्लिकेशन के लिए धीमी प्रतिक्रिया समय हो सकता है यदि प्रक्रियाएं बहुत आक्रामक रूप से मेमोरी से बाहर चली जाती हैं ।

  • swappiness 0 और 100 के बीच एक मान हो सकता है ।
  • swappiness=0:
    • कर्नेल संस्करण 3.5 और नया: स्वैपनेस अक्षम करता है ।
    • 3.5 से पुराना कर्नेल संस्करण: यथासंभव लंबे समय तक भौतिक मेमोरी से स्वैपिंग प्रक्रियाओं से बचा जाता है ।
  • swappiness=1:
    • कर्नेल संस्करण 3.5 और अधिक: इसे पूरी तरह से अक्षम किए बिना न्यूनतम स्वैपनेस ।
  • swappiness=100:
    • कर्नेल को भौतिक मेमोरी से प्रक्रियाओं को आक्रामक रूप से स्वैप करने और उन्हें कैश स्वैप करने के लिए स्थानांतरित करने के लिए कहता है ।

देखें http://en.wikipedia.org/wiki/Swappiness.

उबंटू में डिफ़ॉल्ट सेटिंग है swappiness=60. स्वैपनेस के डिफ़ॉल्ट मान को कम करने से संभवतः एक विशिष्ट उबंटू डेस्कटॉप इंस्टॉलेशन के लिए समग्र प्रदर्शन में सुधार होगा । का एक मूल्य swappiness=10 अनुशंसित है, लेकिन बेझिझक प्रयोग करें ।


उदाहरण

स्वैप का उपयोग शुरू किया 91%:

जैसा कि मैंने रैम का उपयोग करने के लिए अपने सिस्टम और वीएम को कॉन्फ़िगर किया है 90%, पर 90% कोई स्वैपिंग नहीं थी ।

उसके बाद मैंने फ़ायरफ़ॉक्स और शटर जैसे कुछ एप्लिकेशन खोले, और यह स्वैप करना शुरू कर दिया क्योंकि रैम का उपयोग ऊपर है 90%.

किसी भी वास्तविक स्वैप विभाजन/फ़ाइलों के बिना ज़रम स्वैप के लिए, 100 का उपयोग करें । यह सब कुछ पूर्व-संपीड़ित कर देगा जो पूर्व-संपीड़ित हो सकता है, कैश को बरकरार रख सकता है और आवश्यकतानुसार डेटा को जल्दी से डिकंप्रेस कर सकता है (साथ ही, वास्तविक स्वैप के बिना आपको कम रैम पर पूरे सिस्टम को ठंड से बचने के लिए व्यवस्थापक 2 या यहां तक कि एक्स 4 को बढ़ाने की आवश्यकता होगी ।

वास्तविक स्वैप विभाजन के साथ एसएसडी के लिए, 1 का उपयोग करें । यह यथासंभव लंबे समय तक स्वैप करने से रोकेगा, कैश का त्याग करेगा (लेकिन एसएसडी से कैश को आसानी से फिर से पढ़ा जा सकता है) ।

एक लाइनर ‘सुडो बैश-सी "इको’ वीएम । स्वैपनेस = 15 ’ > > / आदि / सिस्कटल । कॉन्फ`

@ रेडनिमालवार आपको सिस्क्टल से नए स्वैपनेस वैल्यू को लोड करने के लिए सुडो सिस्क्टल-पी चलाने की भी आवश्यकता है । कॉन्फिडेंस फाइल, अन्यथा परिवर्तन सिर्फ अगले रिबूट पर लागू होता है ।