डिस्क क्लीनअप में इतना समय और सीपीयू क्यों लगता है?


29

बस एक जिज्ञासा का सवाल है। डिस्क क्लीनअप मेरे एक कोर का 100% काफी समय से और अभी भी चल रहा है। विशेष रूप से विंडोज अपडेट क्लीनअप पर बहुत समय बिताने लगता है।

समझ में नहीं आ रहा है कि फ़ाइलों को हटाना इस तरह की गहन गतिविधि क्यों होनी चाहिए। खासकर जब से यह पहले से ही काफी समय की गणना कर रहा है कि यह क्या हटा सकता है।

डिस्क क्लीनअप में इतना समय और सीपीयू क्यों लगता है? ऐसा क्या करता है जो इतना गहन है?

चार में से दो कोर अधिकतम हो गए

जवाबों:


20

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

इसे सत्यापित करने के लिए आप xperf / WPA के साथ CPU उपयोग का विश्लेषण कर सकते हैं ।


क्या यह सबसे पुरानी फाइलों (जिन्हें हाल ही में नहीं खोला गया है) को संपीड़ित करते समय सहेजे गए स्थान की गणना नहीं करता है?
जस्टिन गोल्डबर्ग

बेहतरीन चलचित्र! निश्चित रूप से उस टूल की जाँच करेंगे: D
Svish

@ क्या आपने इसे सत्यापित किया है? सवाल का जवाब दिया है?
Magicandre1981

4

मैं पुष्टि कर सकता हूं कि विंडोज अपडेट क्लीनअप लगभग 100% सीपीयू का उपयोग करता है, यह सभी WinSxS संपीड़न और अपडेट के पुन: एकीकरण के बारे में है:

विंडोज क्लीनअप 100% CPU उपयोग

मैंने विंडोज इंस्टाल होने के बाद पहली बार सफाई शुरू की और 50% खत्म होने में 2 घंटे का समय लगा। ग्राफ़ से आप देख सकते हैं, कि डिस्क (दूसरी ग्राफ़) से छोटी फ़ाइलों के पहले बहुत कुछ पढ़ने के बाद, और संपीड़न के लिए 100% सीपीयू उपयोग के बाद, और इसी तरह।


2

प्रश्न पर आग लगाने के लिए, मैंने एक अचूक आभासी मशीन पर किया था अगले चरण:

  1. एक SystemRescueCD बूट करें और विंडोज़ विभाजन को माउंट करें
  2. डिस्क पर सभी फ़ाइलों को लॉग फ़ाइल में सूचीबद्ध करें (एक मिनट से कम)
  3. विंडोज पर रिबूट
  4. आज्ञा देना cleanmgrअपना काम करने के लिए और समय को ध्यान में रखना (आठ से अधिक घंटे)
  5. SystemRescueCD पर रीबूट करें और विंडोज़ विभाजन को माउंट करें
  6. डिस्क पर सभी फ़ाइलों को किसी अन्य लॉग फ़ाइल में सूचीबद्ध करें (एक मिनट से कम)
  7. अयोग्य वर्चुअल मशीन को वापस रीसेट करें
  8. विंडोज पर रिबूट
  9. एक ऐसा करें / एफ ... एक व्यवस्थापक कमांड प्रॉम्प्ट (cmd) में ऐसी फ़ाइलों को हटाने के लिए और समय का ध्यान रखें (पांच मिनट से कम)

कृपया ध्यान दें कि मैंने Linux SystemRescueCd पर रीबूट किया, बस सभी फाइलों को सूचीबद्ध करने में सक्षम होने के लिए, विंडो द्वारा भी देखा गया और जितनी जल्दी हो सके ऐसी लिस्टिंग करने के लिए (कोई एसीएल चेक आदि नहीं)।

कृपया यह भी ध्यान दें कि cleanmgrमैं केवल खोज समाप्त होने के बाद केवल समय की गणना करता हूं (खोज स्वयं भी छह घंटे से अधिक समय लेता है)।

इसलिए फाइलें डिलीट करना बोटल नेक नहीं है (डिलीट खुद को केवल पांच मिनट की जरूरत है लेकिन cleanmgrआठ घंटे से अधिक समय लगता है)।

होस्ट के लिनक्स के बाद से यह स्वयं को इतनी तेजी से हटा सकता है, यह गति सिर्फ इसलिए होती है क्योंकि लिनक्स कैश सभी निश्चित आकार की फ़ाइल को लिखता है जो कि वर्चुअल मशीन (24GiB) पर डिस्क के रूप में उपयोग की जाती है, और जब से मेरे पास 64GiB है रैम और मैंने विंडोज 16GiB को इसे स्वैप करने की आवश्यकता नहीं है न ही PAGEFILE.SYS; इससे भी अधिक, लिनक्स रैम पर पूरी फाइल को पकड़ सकता है (मैं रैम पर उस फाइल के साथ परीक्षण किया गया और हटाए जाने वाले cleanmgrसमय को बहुत अधिक किया गया, लेकिन समय कम नहीं होता है)।

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

परीक्षणों के लिए मेरा विन्यास:

  • होस्ट: लिनक्स 64 बिट्स एक हार्डवेयर पर डिस्ट्रो करता है जो कि मुख्य भाग हैं AMD Deca Core 5GHz जिसमें 64GiB का RAM और दो WD VelociRaptor HDDs के साथ Sata Raid0 कंट्रोलर है। 1GiB / s के पास और एक 4K रैंडम राइट लिखने के लिए संयुक्त सेक्यूलर राइट स्पीड बनाए रखने में सक्षम है 300MiB / एस); लागत> दस हजार यूरो है
  • गेस्ट: विंडोज 10 होम विथ 16 जीबीबी ऑफ रैम और 24 जीआईबी की एक वर्चुअल डिस्क

Test1: भौतिक हार्डडिस्क पर 24GiB वर्चुअल डिस्क का होना Test2: लिनक्स होस्ट रैम पर 24GiB वर्चुअल डिस्क का होना

मुझे डर है कि cleanmgrप्रत्येक फ़ाइल जो इसे हटाती है (रजिस्ट्री तक पहुंच बहुत कम है) प्रति विंडोज़ रजिस्ट्री पर कुछ कर रही है।

मॉनिटर्स मैं था:

  • लिनक्स होस्ट और विंडोज गेस्ट पर सीपीयू का उपयोग (0% और 1% के बीच का समय, 5% की बाइक के साथ, अब और नहीं)
  • लिनक्स होस्ट पर एचडीडी का उपयोग (0% के पास जब cleanmgrकाम कर रहा था, 2% की बाइक के साथ), लिनक्स डिस्क कैश वास्तव में बहुत बढ़िया है कि डेटा को असली डिस्क पर भेजा जाए।
  • Windows अतिथि पर HDD का उपयोग (ज्यादातर समय 2% और 15% के बीच जब cleanmgrकाम कर रहा था, 28% की बाइक के साथ)

तो स्पष्ट रूप cleanmgrसे बहुत सा काम कर रहा है, शायद सोने का समय? शायद नहीं, यदि यह रजिस्ट्री को जमा कर रहा है, तो इसके लिए सीपीयू को विंडोज मॉनिटर द्वारा नहीं गिना जाता है, उस पर एचडीडी का उपयोग नहीं किया जाता है (रजिस्ट्री रैम पर है), आदि, और रजिस्ट्री तक प्रत्येक पहुंच एक सेकंड से अधिक ले सकती है। रजिस्ट्री को खोलने और एचके * खोलने पर प्रत्येक क्रिया के अनुसार इसे बंद करके रजिस्ट्री तक पहुंचने के लिए अपने स्वयं के कार्यक्रम का प्रयास करें ... यह एक बड़ा अंतर है।

तो अगर cleanmgrप्रत्येक फ़ाइल के लिए है:

  1. रजिस्ट्री एचके खोलें *
  2. रजिस्ट्री पर कुछ लिखने और / या कुछ करने की आवश्यकता है
  3. रजिस्ट्री एचके बंद करें *

यह प्रति ऑपरेशन दो या तीन सेकंड के रूप में ज्यादा ले सकता है, और अगर यह प्रति फ़ाइल एक ऑपरेशन करता है, तो यह प्रत्येक हजार फाइलों में से एक घंटे के करीब ले सकता है ... मेरी फाइलों की गिनती सिर्फ 40000 फाइलों से थोड़ी अधिक थी, इसलिए 40000 फाइलें / 8 घंटे एक फाइल को प्रत्येक 1.3 सेकंड में संसाधित कर रहा है ... दूसरी तरफ, उन्हें एक स्क्रिप्ट पर हटाना (विच को जानने के बाद) पांच मिनट से भी कम समय लगा, जो कि 133 प्रति सेकंड के बारे में मिटा रहा है ... एक hufe अंतर।

तो निश्चित रूप से cleanmgrसमय deletionस्वयं के कारण नहीं है ! और क्या कर रहा है? कृपया M $ उस गति में सुधार करें!


1
यह मूल प्रश्न का उत्तर नहीं है । यदि आपके पास कोई नया प्रश्न है, तो कृपया अपना प्रश्न पूछें (यदि यह मदद करता है तो संदर्भ के लिए इसे संदर्भित करता है)।
DavidPostill

आपने विंडोज़ रजिस्ट्री आदि के कार्यों का विश्लेषण करने के लिए प्रक्रिया मॉनिटर ( docs.microsoft.com/en-us/sysinternals/downloads/procmon ) का उपयोग क्यों नहीं किया ?
साइबरबर्ड

* मैं हूँ परिवर्तनशील sp।
स्टिंगजैक 14

2

इस समस्या को कम करने और "डिस्क क्लीनअप" के "विंडोज अपडेट क्लीनअप" चरण को थोड़ा तेज करने के लिए अस्थायी रूप से तथाकथित 'क्लीनअप' गतिविधि की अवधि के लिए TiWorker.exe प्रक्रिया के लिए एक उच्च प्राथमिकता निर्धारित करना है ।

में कार्य प्रबंधक 'विवरण' फलक, लगता है TiWorker.exeऔर एक पॉप-अप मेनू दिखाने के लिए राइट क्लिक करें। 'सेट प्राथमिकता' के लिए, "ऊपर सामान्य चुनें।" मेरे लिए, इसने TiWorkerCPU गतिविधि को बढ़ा दिया - औसतन लगभग 16% - 25% की पूरी क्षमता तक (4-कोर मशीन पर)।

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

मिनीस्कुल स्पीडअप के अलावा - और संभवतः उपलब्धि की अच्छी भावना - यह प्रदान करता है, जाहिरा तौर पर "विंडोज अपडेट क्लीनअप" के बाद से बहुत कम किया जा सकता है, जो किसी अज्ञात कारण से, फ़ाइल-दर-फ़ाइल आगे बढ़ता है, समग्र काम को बुरी तरह से डिस्क-बाउंड करना।

और यह भी, पता है कि प्रक्रिया शायद सबसे लटका नहीं है , और किसी दिन वास्तव में पूरा हो जाएगा। इसे सत्यापित करने के लिए (और इस कष्टप्रद प्रतीक्षा समय के दौरान अपने आप को और अधिक विचलित करने के लिए), आप संसाधन मॉनिटर के 'डिस्क गतिविधि' अनुभाग की जाँच कर सकते हैं ("resmon.exe" चलाएँ)।


बहुत अच्छी गति!
विषयवादी

1

5mb आकार की 20 फ़ाइलों को हटाने से आकार में 64mb की 10 फ़ाइलों को हटाने में अधिक समय लगेगा। ऐसा इसलिए है क्योंकि जब सिस्टम फ़ाइलों को हटाता है, तो यह वास्तव में उन्हें नहीं हटाता है (क्योंकि ड्राइव पर खाली जगह "शोर" बिट्स से बना हो सकता है) लेकिन सिर्फ सामने वाले हिस्से को ओवरराइट करता है जो कहता है, "एक फाइल यहां शुरू होती है" जिबरिश के साथ और फिर यह खुशी से उस और निम्नलिखित भागों को बाद में अधिलेखित करेगा जब आप अंतरिक्ष का उपयोग करना चाहते हैं। हकीकत में, डिलीट करना लेखन के समान ही है।

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


मूल प्रश्न विशेष रूप से डिस्क क्लीनअप के बारे में पूछता है।
liljoshu

0

चेतावनी का एक और शब्द: जो कुछ समय लेता है, वह यह है कि, WinSxS को साफ करते समय, डिस्क क्लीन-अप में बहुत सारी फाइलों को अनसुना करने के लिए सबसे पहले होता है। तो डिस्क का उपयोग वास्तव में सफाई के पहले भाग के लिए बढ़ जाता है!


-2

प्रक्रिया को गति देने का एक और तरीका डिस्क क्लीनअप को लगभग 5 मिनट तक चलाना है। इसे रोकें, फिर इसे फिर से शुरू करें, और यह एक झटके में हो जाएगा! इसके अलावा, अपने HDD / SSD को पहले से डी-फ्रेगिंग या ऑप्टिमाइज़ करने से चीजें तेजी से बढ़ेंगी, बस सफाई के बाद इसे डी-फ्रेगर / ऑप्टज करना याद रखें।


कृपया अपने SSD को डिफ्रैग्मेंट न करें, यह चक्रों को पढ़ने और लिखने के लिए पहनता है और इसका कोई लाभ नहीं है।
नॉर्डिल्स जेगर

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