विंडोज 10, 'सिस्टम' प्रक्रिया में भारी मात्रा में रैम होती है


83

जब से मैंने विंडोज 10 में अपग्रेड किया है, मेरा सिस्टम रैम की अत्यधिक खपत कर रहा है

यहाँ छवि विवरण दर्ज करें

मैं थोड़ा पढ़ रहा हूं और यह निर्धारित किया है कि यह संभवत: एक ड्राइवर है जो मेमोरी को लीक कर रहा है। इसलिए मैंने खुद को विंडोज ड्राइवर किट प्राप्त किया और पूलमोन के साथ मेमोरी उपयोग को ट्रैक किया:

यहाँ छवि विवरण दर्ज करें

हालाँकि, मैं वास्तव में नहीं जानता कि यहाँ से कैसे आगे बढ़ना है। क्या आइटम को इस मामले में "smNp" अपराधी माना जाता है? मैं वास्तव में ड्राइवर की पहचान करने के लिए वहाँ से कैसे जाऊँ?

मैं जैसे कुछ सामान की कोशिश की "C: \ Windows \ System32 \ ड्राइवरों> findstr / एस smnp " लेकिन यह कोई परिणाम नहीं मिले। मैंने पूलटैग.टैक्स फ़ाइल पर भी एक नज़र डाली और यह विवरण है जो मैंने इसके लिए पाया है:

यहाँ छवि विवरण दर्ज करें

तो हाँ, किसी भी मदद की सराहना की जाएगी। अग्रिम में धन्यवाद।


1
ठीक है, मैंने वह जानकारी जोड़ी जो खोजने में सक्षम थी। उन्हें चेक करें
Magicandre1981

1
यह सिस्टम की एक विशेषता है जो वास्तव में डिस्क में पेजिंग के बजाय संपीड़न का उपयोग करके रैम में अधिक चीजों को रखने के लिए है। @ Magicandre1981 की यहाँ सही जानकारी है जिसे सही उत्तर के रूप में स्वीकार किया जाना चाहिए।
मणि गंधम

14 मेगाबाइट्स जो कि पूलमोन शो smNp टैग के साथ जुड़ा हुआ है, एक विशुद्ध रूप से तुच्छ राशि है। आप सिस्टम प्रक्रिया निजी कामकाजी सेट में 1.3 जीबी के बारे में चिंतित हैं - क्यों नॉनपेज़्ड पूल के 14 एमबी पर ध्यान केंद्रित करें (जो किसी भी प्रक्रिया के काम करने वाले सेट में बिल्कुल नहीं है)?
जेमी हनरहान

जवाबों:


13

में जाकर services.msc(के माध्यम से Win+R) और SuperFetch अक्षम करने के लिए पूरी तरह इस को हल करती है। मुझे यकीन नहीं है कि अगर सुपरफच अभी के रूप में टूट गया है या यह "डिजाइन द्वारा" है।

इसके अलावा, स्पष्ट रूप से पेजिंग फ़ाइल से छुटकारा पाने का एक ही प्रभाव होगा लेकिन उपरोक्त समाधान एक सुरक्षित शर्त है।


1
यह वास्तव में काम किया। सिस्टम के लिए मेमोरी उपयोग घंटे के उपयोग के बाद भी ~ 0.1MB पर वापस आ गया है। धन्यवाद!
नय्नकोर

26
जबकि आम तौर पर इस तरह के उच्च मेमोरी उपयोग एक मेमोरी लीक के लिए लाल झंडा होगा, इस मेमोरी का उपयोग वैध रूप से विंडोज 10 के फीचर्स के रूप में किया जा रहा है (नीचे मैडेंड्रे का जवाब देखें)।
बिगबियो 2002

7
यह एक बग नहीं है और इसे निष्क्रिय नहीं किया जाना चाहिए
phuclv


6
यदि सुविधा निरंतर कम स्मृति चेतावनी का कारण बनती है तो यह अच्छी सुविधा नहीं है। अब 4GB रैम के साथ मेरा सर्फेस प्रो पूरी तरह से विकास के लिए अनुपयोगी है और यहां तक ​​कि 8 जीबी रैम वाले लैपटॉप पर भी मुझे लगातार चेतावनी मिलती रहती है। समाधान के लिए अँगूठा!
ओलेग आई।

94

मैंने कई उपयोगकर्ताओं के xperf निशान को देखा है और यहाँ ntoskrnl.exe!SmKmStoreHelperWorkerकर्नेल का कार्य मेमोरी आवंटित करना शुरू करता है।

स्क्रीनशॉट
(विस्तार के लिए छवि पर क्लिक करें)

मैंने इसका पता सिसिन्टर्नल्स पर लगाया ।

मैंने इसके बारे में Microsoft से पूछा है और जवाब है कि यह डिज़ाइन द्वारा है। यह सिस्टम मेमोरी कंप्रेशन से संबंधित है।

में Windows 10 बिल्ड 10525 की घोषणा माइक्रोसॉफ्ट ने इसे थोड़ा विस्तार से बताया :

विंडोज 10 में, हमने मेमोरी मैनेजर में एक नया कॉन्सेप्ट जोड़ा है जिसे कम्प्रेशन स्टोर कहा जाता है, जो कि कंप्रेस्ड पेजों का इन-मेमोरी कलेक्शन है। इसका मतलब यह है कि जब मेमोरी मैनेजर मेमोरी प्रेशर महसूस करता है, तो यह डिस्क पर लिखने के बजाय अप्रयुक्त पृष्ठों को संकुचित कर देगा यह प्रति प्रक्रिया उपयोग की गई मेमोरी की मात्रा को कम कर देता है, जिससे विंडोज़ 10 को एक बार में भौतिक मेमोरी में अधिक एप्लिकेशन बनाए रखने की अनुमति मिलती है। यह विंडोज 10. पर बेहतर जवाबदेही प्रदान करने में मदद करता है। कंप्रेशन स्टोर सिस्टम प्रक्रिया के कार्य सेट में रहता है।चूंकि सिस्टम प्रक्रिया मेमोरी में स्टोर रखती है, इसलिए इसका कार्य सेट ठीक उसी समय बड़ा हो जाता है जब मेमोरी को अन्य प्रक्रियाओं के लिए उपलब्ध कराया जा रहा हो। यह कार्य प्रबंधक में दिखाई देता है और इसका कारण सिस्टम प्रक्रिया पिछले रिलीज़ की तुलना में अधिक मेमोरी खपत करती है।

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

Microsoft ने अंदर के हब में अधिक विवरण भी पोस्ट किया है। विनबेटा ने एक लेख बनाया जिसमें अधिक विवरण शामिल हैं।

जाहिर है, इसका कारण Microsoft द्वारा निलंबित UWP ऐप का चयन करना है जब वे अग्रभूमि में नहीं थे, कुछ स्मार्टफोन ओएस प्रबंधन के समान। विंडोज 8 उपयोगकर्ता समझ गए (शायद नहीं) कि अगर एप्लिकेशन स्क्रीन पर नहीं थे, तो वे तब तक नहीं चलेंगे जब तक उपयोगकर्ता उन्हें वापस स्विच नहीं करता। पेजफाइल और सामान्य पेजिंग गतिविधि के बीच एक परत पेश करते हुए विंडोज 10 के साथ 'सभी या कुछ नहीं' दृष्टिकोण को अपडेट किया जा रहा है । अब, जब मेमोरी दबाव के मुद्दों का सामना करना पड़ता है, तो एमएम निर्धारित करेगा कि ट्रिमिंग नामक प्रक्रिया में कौन से पृष्ठों को संशोधित सूची में स्थानांतरित किया जाना चाहिए।संशोधित सूची स्टैंडबाय पेजफाइल्स की सूची का समर्थन करने वाले पेजफाइल्स की एक द्वितीयक सूची है। यदि बैकअप मेमोरी स्टैंडबाय सूची से किसी अन्य प्रक्रिया द्वारा पुनर्प्राप्त की जाती है, तो एक बैकअप सूची कैप्चर की जाती है, और मूल प्रक्रिया इसके पृष्ठ की तलाश में आती है। सभी या कुछ नहीं के बजाय, विंडोज़ 10 एमएम डिस्क पर लिखने के बजाय अप्रयुक्त पृष्ठों को संपीड़ित करेगा। कम लेखन के साथ, परिणाम कम डिस्क संचालन होना चाहिए - संपीड़न के लिए धन्यवाद - और अब मेमोरी में अधिक डेटा संग्रहीत किया जा सकता है।

यहाँ छवि विवरण दर्ज करें

विंडोज टीम के अनुसार, " व्यवहार में, संकुचित मेमोरी लगभग 40% असम्पीडित आकार लेती है, और एक विशिष्ट कार्यभार को चलाने वाले एक विशिष्ट उपकरण के परिणामस्वरूप, विंडोज़ 10 केवल 50% डिस्क पर पृष्ठों को पिछले संस्करणों के पिछले संस्करणों के रूप में लिखता है। ओएस। "अगर सभी योजना के अनुसार चला जाता है, तो विंडोज उपयोगकर्ताओं को सभी उपकरणों के साथ-साथ फ्लैश-आधारित हार्ड ड्राइव वाले सिस्टम पर विस्तारित जीवनकाल के लिए कम प्रतीक्षा समय का अनुभव हो सकता है

Decompression भी कुछ है विंडोज 10 को अच्छी तरह से करने के लिए डिज़ाइन किया गया है। विंडोज 10 एक बार मेमोरी में पेज बनाने के लिए समानांतरता और अनुक्रमिक रीड के संयोजन का उपयोग कर रहा है। नए डीकंप्रेसन के परिणामस्वरूप तेज गति का अनुभव होना चाहिए क्योंकि विंडोज 10 एक साथ डेटा को डिकम्प्रेस कर रहा है और इसे कई सीपीयू का उपयोग करके समानांतर में पढ़ रहा है। डिस्क के बीच स्थानांतरण दरों के कारण विंडोज के पुराने संस्करणों में सुस्ती महसूस हो सकती है।

Microsoft ने Channel9 पर एक वीडियो भी जारी किया, जो फीचर की व्याख्या करता है।

Windows 10 RTM में मेमोरी कम्प्रेशन
https://channel9.msdn.com/Blogs/Seth-Juarez/Memory-Compression-in-Windows-10-RTM

इस वीडियो में मेहमत इयगुन ने कुछ समय बिताते हुए चर्चा की कि विंडोज 10 में सिस्टम प्रक्रिया थोड़ी अधिक मेमोरी क्यों ले रही है और यह अच्छी बात क्यों है। अधिक मेमोरी लेने वाली प्रक्रिया एक बुरी चीज की तरह लगती है - जब तक कि मैं मेमोरी मैनेजमेंट, पेजिंग और हार्ड / सॉफ्ट पेज दोषों के बारे में अधिक नहीं समझ पाता। यह बताता है कि ओएस कुछ चतुर अनुकूलन कर रहा है जो आपकी प्रक्रियाओं को कुछ मेमोरी को ट्रिम करने की अनुमति देता है, लेकिन जरूरी नहीं कि यह डिस्क से बाहर हो। न केवल रैम में संरक्षित मेमोरी है, बल्कि यह संपीड़ित भी है - कठिन पेज बनाने से अधिक दुर्लभ घटना होती है। परिणाम एक स्नैपर अनुभव के लिए करना चाहिए।

नवीनतम TH2 बिल्ड में, Microsoft ने कार्य प्रबंधक में विवरण को अपडेट किया और अब यह भी दिखाता है कि सिस्टम प्रक्रिया होस्ट करती है compressed memory:

यहाँ छवि विवरण दर्ज करें

"उच्च" उपयोग के बारे में भ्रम से बचने के लिए।

अगस्त 2016 में जारी किए गए विंडो 10 एनिवर्सरी अपडेट में, माइक्रोसॉफ्ट ने अब एक छद्म प्रक्रिया में दिखाए गए संपीड़न को निकाला, जिसे Memory Compressionअब उपयोगकर्ताओं को भ्रमित करने के लिए नहीं बुलाया जाता है कि सिस्टम का इतना बड़ा मेमोरी उपयोग क्यों है:

यहाँ छवि विवरण दर्ज करें

लेकिन ऐसा लगता है कि टास्कमर्ग इस प्रक्रिया को नहीं दिखाता है, केवल ProcessExplorer / ProcessHacker इसे दिखाने में सक्षम हैं। टास्कम्रग केवल सिंहावलोकन में संपीड़ित मेमोरी की मात्रा दिखाता है:

यहाँ छवि विवरण दर्ज करें

यदि आप Taskmgr में उपयोग किए गए मेमोरी ग्राफ पर मंडराते हैं, तो आप एक टूलटिप देखते हैं जो डेटा के amout को दिखाता है जो संकुचित हैं।

यहाँ छवि विवरण दर्ज करें

इस डेमो में 388MB को 122MB तक संपीड़ित किया जाता है इसलिए 267MB को संपीड़न से बचाया जाता है।


9
@Zaibis: मुझे लगता है कि विचार यह है कि आप "1GB ड्रॉपिंग" नहीं कर रहे हैं। 1GB विंडोज द्वारा आरक्षित किया गया है और आवंटन के लिए उपयोग किया जाएगा। आपने मेमोरी नहीं खोई है।
ऑर्बिट

12
"अप्रयुक्त मेमोरी व्यर्थ स्मृति है" लंबे समय से ओएस एक्स का मंत्र है। लगता है जैसे विंडोज को बोर्ड पर भी मिला।
deceze

1
@ Magicandre1981 आपका क्या मतलब हैSystem Memory compression
user2284570

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

2
@JosiahKeller "कम मेमोरी" संवाद कम वर्चुअल मेमोरी के बारे में है। इसका भौतिक भौतिक मेमोरी (RAM) के उपयोग या उपलब्धता से कोई लेना-देना नहीं है। वे सभी आधुनिक डेस्कटॉप OSes द्वारा अलग से खाते हैं।
डेविड श्वार्ट्ज

0

मुझे एक बाहरी मामला मिला जो उच्च सिस्टम मेमोरी उपयोग का कारण बनता है, और यह जानकारी किसी को भी लाभ होने की स्थिति में इसे शामिल करना चाहता था।

यदि आप Microsoft के वॉल्यूम स्नैपशॉट (सॉफ़्टवेयर स्नैपशॉट, हार्डवेयर स्नैपशॉट नहीं) का अत्यधिक उपयोग करते हैं, तो जितने स्नैपशॉट आप बड़े डेटा परिवर्तनों के साथ जोड़ते हैं, उसके बाद सिस्टम अधिक RAM की खपत करेगा।

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

नीचे एक चरम मामला है जो सर्वर की सिस्टम प्रक्रिया को 13GB RAM का उपयोग करके दिखाता है। इस सर्वर में केवल दो वॉल्यूम स्नैपशॉट हैं, जिन्हें 15 दिनों के अलावा लिया गया है, प्रत्येक स्नैपशॉट के बीच में लगभग 10 टीबी डेटा लिखा गया है।

13GB पर सिस्टम मेमोरी उपयोग

ऊपर दी गई सिस्टम प्रक्रिया पहले 24GB उपयोग में थी, और निम्नलिखित तीन व्यवहार देखे गए:

  1. रिबूट और वापस लॉग इन करने के बाद, सिस्टम एक रिक्त स्क्रीन पर कुछ समय तक लटका रहेगा जब तक कि डेस्कटॉप दिखाई नहीं देगा।
  2. इस हैंग के दौरान टास्क मैनेजर (CTRL-SHIFT-ESC) को खींचकर सिस्टम मेमोरी के उपयोग को बढ़ता हुआ दिखाया गया।
  3. इस हैंग के दौरान, वॉल्यूम स्नैपशॉट के साथ डिस्क ने बहुत सारे रीड्स का प्रदर्शन किया, जो प्रदर्शन मॉनिटर में नहीं दिखा। हालाँकि, क्योंकि डिस्क ने iSCSI का उपयोग किया था, नेटवर्क कार्ड ने 200 एमबीपीएस के आसपास एक स्थिर रीड स्ट्रीम दिखाया।

मुझे वॉल्यूम स्नैपशॉट पर संदेह था, इसलिए मैंने सबसे पुराने स्नैपशॉट को हटाने की कोशिश की, जिसने सिस्टम की मेमोरी के उपयोग को तुरंत 24 जीबी से घटाकर 13 जीबी कर दिया।

इन परिस्थितियों में यह सामान्य व्यवहार हो सकता है, हालाँकि मैंने Microsoft के साथ इसकी पुष्टि नहीं की है। इस बीच मैं स्नैपशॉट ओवरहेड को संभालने के लिए इस सर्वर पर एक अतिरिक्त 32 जीबी रैम जोड़ रहा हूं।

(नोट: यह एक हाई वॉल्यूम बैकअप सर्वर है जो विंडोज 2016 में 64 टीबी एसएसडी आईएससीएसआई ड्राइव के साथ जुड़ा हुआ है। यह किसी भी समय औसतन तीन वॉल्यूम स्नैपशॉट रखता है, हर 15 दिनों में एक नया बनाया जाता है। लगभग 10 टीबी है। प्रत्येक स्नैपशॉट के बीच में लिखा गया डेटा)।


-1

Regedit कुंजी में प्रीफ़ेचर को अक्षम करें: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParametersआपके पास संभवतः इसका Enable Prefetcherमान है 2या 3इसलिए इसे बदल दें0

अगला आपको Superfetchसेवाओं में अक्षम करने की आवश्यकता है

  1. Services.msc के लिए खोजें

  2. खोज पर superfetchक्लिक करें और propertiesफिर disabledसेवा पर भी रोकें।

मैं इन चरणों को करता हूं और जब मैं गेमिंग करता हूं और सामान्य रूप से पीसी systemका उपयोग करता हूं और प्रक्रिया केवल 28k का उपयोग करती है


12
यह एक भयानक विचार है। Prefetch / सुपरफच का उपयोग एक कारण के लिए किया जाता है। यदि आपको लगता है कि आप अपने ओएस से बेहतर मेमोरी का प्रबंधन कर सकते हैं, तो आप दुखी हैं।
b1nary.atr0phy

प्रीफ़ैच को अक्षम करना (या "अपने प्रीफ़ेच फ़ोल्डर को साफ करना") वास्तव में एक बहुत ही मूर्खतापूर्ण विचार है। Prefetch किसी भी अधिक RAM का उपयोग करने के लिए सिस्टम का कारण नहीं बनता है। यह exe के लोड होने की गति बढ़ाता है और dll के एक बार जब आप उन्हें शुरू करते हैं , और उसके बाद ही। Re SuperFetch, Microsoft Windows ड्राइव के लिए SSD के साथ सिस्टम पर डिफ़ॉल्ट रूप से SuperFetch को अक्षम करता है; उन्हें लगता है कि लाभ इसके लायक नहीं है। व्यक्तिगत रूप से मैं इसे सक्षम रखता हूं क्योंकि मेरे पास अन्य ड्राइव, गैर-एसएसडी हैं, जो मैं चाहता हूं कि एसएफ अभी भी संचालित हो।
जेमी हनरहान
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.