पूरी तरह से linux पर filesytem के कैश को कैसे साफ़ करें?


9

एक प्रदर्शन परीक्षण में, मैं लिनक्स सिस्टम के कैश के प्रभाव को दरकिनार करना चाहता हूं (पेज कैश / इनकोड कैश और इतने पर सहित)।

मैंने O_DIRECT ध्वज की कोशिश की है, लेकिन यह पता चला है कि प्रत्यक्ष I / O अभी भी कुछ कैश के प्रभाव का "आनंद" है।

क्या सिस्टम कैश के प्रभाव को बंद करने का एक संपूर्ण तरीका है?


2
ऐसे "अवास्तविक" प्रदर्शन परीक्षण का बिंदु क्या है? आप कुछ ऐसा करने की कोशिश कर रहे हैं जिसे कोई भी आधुनिक ओएस कभी नहीं होने देगा।

दुर्भाग्य से, यह बिल्कुल भी असत्य नहीं है, यह अभी भी है कि कर्नेल aio आज कैसे काम करता है। मैं चाहता हूं कि मिस्टर को एहसास होगा कि एसिंक्रोनस I / O और कैश परस्पर अनन्य शब्द नहीं हैं। यह कुछ लोगों को माइक्रोसॉफ्ट में 15 साल पहले ही एहसास हो गया था (हालांकि विस्टा से पहले व्यक्तिगत रूप से प्रदर्शन निराशाजनक हो सकता है, विशेष रूप से संगामिति के तहत)। कुछ भारतीय व्यक्ति ने एक पैच साल पहले भी लिखा था, लेकिन उसे ठुकरा दिया गया था।

जवाबों:


14

(यह वास्तव में इतना गिरता है ..) syncपहले भागो , फिर

नि: शुल्क पेजकेस:

echo 1 > /proc/sys/vm/drop_caches

मुफ्त डेंटल और इनोडेस:

echo 2 > /proc/sys/vm/drop_caches

नि: शुल्क पेजचेस, डेन्चर और इनोडेस:

echo 3 > /proc/sys/vm/drop_caches

फिर आप एक साफ कैश के साथ शुरू कर सकते हैं, लेकिन निश्चित रूप से कैशिंग अभी भी काम करेगा।


मैंने इस विधि के बारे में कहीं सुना है। लेकिन मेरे ubuntu 10.04 पर ऐसी कोई फाइल नहीं है। इसलिए मैं उपरोक्त आदेशों को निष्पादित करने में विफल रहा।

@tom_cat: आपको 2.6.16 की तुलना में नए कर्नेल की आवश्यकता है, और Ubuntu 10.04 2.6.32 के साथ आया है अगर मैं गलत नहीं हूं, तो यह काम करना चाहिए। मैंने अभी-अभी अपनी 11.04 की जाँच की है कि यह किस लायक है, जिसके पास यह प्रोक एंट्री है (गैर-10.04 यहाँ कोई और नहीं)

@ डामन: हाँ, आप सही हैं। बहुत बहुत धन्यवाद। मैंने पाया है कि मैंने पुराने कर्नेल की रिमोट मशीन पर लॉग इन किया था।

0

नहीं, आप कैश को बायपास नहीं कर सकते। लेकिन, हालाँकि, आप अतिरिक्त सिस्टम कॉल fsync (3) के साथ फ़ाइल सिस्टम सिंक (जिसका अर्थ है, कैश को साफ़ करें और डिस्क पर डेटा लिखें) को बाध्य कर सकते हैं।

अभिवादन, सी.के.

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