Cleancache बनाम zram?


9

मेरे पास केवल 512 एमबी रैम वाला एक पुराना लैपटॉप है। चूंकि कुछ कर्नेल रिलीज़ होते हैं, इसलिए मैं 256 एमबी के लिए इसे संपीड़ित रैमडिस्क में परिवर्तित करने के लिए ज़्राम का उपयोग कर रहा हूं जो तब स्वैप के रूप में उपयोग किया जाता है। यह बहुत सफल साबित हुआ है और प्रणाली बहुत अधिक उत्तरदायी है, (हार्ड-डिस्क-समर्थित) स्वैप का उपयोग काफी कम हो गया है, जिसने सिस्टम को पहले धीमा कर दिया।

लिनक्स 3.0 के बाद से, कर्नेल में क्लीन्च भी शामिल है , जो बैकेंड के रूप में ज़्राम की तरह कुछ का उपयोग करके पेज कैश से पृष्ठों को पारदर्शी रूप से संपीड़ित करने के लिए माना जाता है। जहाँ तक मैं देख सकता हूँ यह ज़रम से अलग है ।

क्या मुझे अपने लैपटॉप पर दोनों को सक्षम करना चाहिए? या सफाई वास्तव में ज़रम समाधान को उलट देती है?

संपादित करें: मैं इस पाया है Gentoo मंच लिंक जहां ऐसा लगता है मैं भी सक्षम करने के लिए है, CONFIG_ZCACHEजो तब बनाता cleancache उपयोग zram क्या मैं पहले था करने के लिए कुछ इसी तरह प्राप्त करने के लिए। तो ऐसा लगता है कि मैं इस सब को सक्षम करता हूं और बाद में स्पष्ट रूप से ज़्राम का उपयोग नहीं करता हूं । क्या कोई इसकी पुष्टि कर सकता है?

जवाबों:


9

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

CleanCache पृष्ठ कैश से पृष्ठों को बैक एंड में माइग्रेट करने की अनुमति देता है, जैसे कि एक्सन temem, जिसे हाइपरविजर द्वारा प्रबंधित मेमोरी और कई VM मेहमानों के बीच साझा किया जाता है। इसका लक्ष्य कई वीएम मेहमानों को एक ही डेटा का उपयोग करने के लिए एक ही डेटा को कैशिंग करने की अनुमति देना है, प्रत्येक के बजाय एक ही डेटा की अपनी प्रतिलिपि के साथ अपने स्वयं के कैश होने चाहिए।

ZCache एक और CleanCache बैक एंड है। मेमोरी को पास करने के बजाय हाइपरवाइजर को होल्ड करने के लिए (जो केवल एक एक्सएम वीएम पर्यावरण का उपयोग करने पर लागू होता है), यह Zram के समान RAM में संचित कैश पेजों को संग्रहीत करता है। अंतर यह है कि ZCache पारदर्शी रूप से कैश पृष्ठों को संग्रहीत करता है, लेकिन Zram एक ब्लॉक डिवाइस बनाता है जिसे आप स्वैप के लिए उपयोग कर सकते हैं।

यदि आपके पास मेमोरी के भूखे अनुप्रयोग हैं, तो आपको उनका समर्थन करने के लिए स्वैप स्थान की आवश्यकता होगी, इसलिए आप अभी भी ज़्राम (बहुत उच्च स्वैच्छिक मूल्य के साथ) का उपयोग करना चाहेंगे। ऐसा इसलिए है क्योंकि CleanCache केवल कैश पृष्ठों को संपीड़ित करता है; एप्लिकेशन मेमोरी को स्वैप में भेजना होगा। यदि आप एप्लिकेशन पर अपनी सभी मेमोरी का उपयोग नहीं कर रहे हैं, तो आप डिस्क कैश का उपयोग करके डिस्क कैशिंग के लिए शेष मेमोरी का अधिक प्रभावी उपयोग करने के लिए ZCache बैकएंड के साथ CleanCache का उपयोग कर सकते हैं। तुम भी दो तकनीकों के मिश्रण का उपयोग कर सकते हैं।


ठीक है, धन्यवाद, इसलिए कैश पेज केवल डिस्क कैशिंग के लिए हैं, एप्लिकेशन मेमोरी के लिए नहीं। यह मुझे स्पष्ट नहीं था।
लीटेनिन

7

उपरोक्त उत्तर के अतिरिक्त, प्रौद्योगिकी के विस्तृत विवरण के लिए https://lwn.net/Articles/454795 भी देखें ।

मुझे जो समझ में आया है, ज़्राम को मोर्चों द्वारा लहराया जाएगा , जो कि मेनलाइन कर्नेल में अभी तक नहीं है, लेकिन इसका फायदा यह है कि कोई निश्चित स्वैप आकार कॉन्फ़िगर नहीं करना है। इससे दोनों को सक्षम करने के कर देगा cleancache और frontswap (के बजाय zram और cleancache , जहां के लिए इस्तेमाल किया स्मृति zram के लिए इस्तेमाल नहीं किया जा सकता cleancache )।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.