मैं एक वीएम में धीमी मशीन का अनुकरण कैसे कर सकता हूं?


29

मैं एक AJAX भारी वेब अनुप्रयोग का परीक्षण कर रहा हूँ। मैं एक नए मैक पर विकसित होता हूं, लेकिन मैं IE के पुराने संस्करणों को अनुकरण करने के लिए IETester का उपयोग करके Windows XP में परीक्षण करने के लिए VmWare Fusion (वर्तमान में 3.1.2) का उपयोग करता हूं ।

यह मुझे यह देखने की अनुमति देता है कि पुराने IE संस्करण साइट को कैसे प्रस्तुत करेंगे, लेकिन मैं यह भी देखना चाहता हूं कि साइट किसी पुरानी मशीन पर कैसा प्रदर्शन करेगी। मैं वीएम की सेटिंग्स में देखता हूं कि मैं रैम को कम कर सकता हूं; वहाँ भी प्रोसेसर गति नीचे डायल करने के लिए एक रास्ता है? मैं एक धीमी मशीन का अनुकरण कैसे कर सकता हूं?

(मैं यह भी जांचने जा रहा हूं कि धीमे इंटरनेट कनेक्शन का अनुकरण कैसे किया जाए ।)

जवाबों:


17

धागा एक आभासी मशीन में CPU गति सीमित कुछ सलाह प्रदान करता है:

  • VMWare ESX और ESXi पर आप एक संसाधन पूल बना सकते हैं और उस पूल के लिए CPU संसाधन सीमित कर सकते हैं। यह आपको उस संसाधन पूल में निर्मित किसी भी सिस्टम की सीपीयू गति को सीमित करने की अनुमति देगा।
  • MS हाइपर- V में सेटिंग्स किसी वर्चुअल मशीन को समग्र होस्ट के एक प्रतिशत तक सीमित करने की अनुमति देती हैं। इसलिए यदि आपके पास 2 गीगाहर्ट्ज पर 8 कोर होस्ट चल रहा है, तो आप क्लाइंट वर्चुअल मशीन को एक कोर तक सीमित करने की कोशिश कर सकते हैं, और 45% से अधिक कोर नहीं।

वर्चुअल पीसी लड़के ने वर्चुअल मशीन को धीमा करने में टिप्पणी की :

वर्चुअल सर्वर (उदाहरण के लिए) के तहत अधिकतम 10% सीपीयू संसाधन के साथ एक वर्चुअल मशीन सेट करने का मतलब है कि यह केवल सीपीयू पर चलने की अनुमति देगा जो कुल सिस्टम शेड्यूलिंग समय के 10% समय के लिए है। जबकि वर्चुअल मशीन चल रही है, यह अभी भी पूर्ण प्रोसेसर गति पर चल रही है (यद्यपि यह अन्यथा कम चलेगा)।

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


7

आप अपनी प्रक्रिया को आवंटित समय प्रसंस्करण की मात्रा को सीमित करने के लिए cpulimit का उपयोग कर सकते हैं । यह अधिकांश लिनक्स वितरण के लिए रिपॉजिटरी में उपलब्ध है।

उपयोग बहुत सरल है, उदाहरण के लिए यदि आपका VM 12345 प्रक्रिया के रूप में चल रहा है और आप इसे केवल 5% CPU चक्र आवंटित करना चाहते हैं, तो निम्न विकल्पों का उपयोग करें:

$ cpulimit -l 5 -p 12345

4

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

कहा जा रहा है कि, आप VMWare फ्यूजन के CPU उपयोग को सीमित करने के लिए मैक के प्रोसेस मैनेजमेंट टूल का उपयोग कर सकते हैं। यदि आप एक पुरानी मशीन का अनुकरण करने के लिए यह अच्छी तरह से करते हैं, तो पूरे VMWare एप्लिकेशन संभवतः एक पुरानी XP- तैयार मशीन की तरह, वास्तव में धीरे-धीरे चलेगा।

मुझे नहीं पता कि इसके लिए ग्राफिकल मैक प्रोग्राम क्या है, लेकिन देखें कि क्या आपका मैक reniceकमांड का समर्थन करता है : एक टर्मिनल खोलें और man reniceमैक पर काम करने के तरीके के बारे में पढ़ने के लिए टाइप करें।

वैसे, एक्सपी-तैयार मशीनें शायद अभी सस्ते में गंदगी कर रही हैं। एक वास्तविक एक शायद ~ $ 75 के लिए हो सकता था। फिर, आप अपनी वर्चुअल मशीन को असली में स्थानांतरित कर सकते हैं ...


2
हा! एक वास्तविक मशीन खरीदने के लिए दिलचस्प विचार। चूँकि पूरा विचार पुराने कंप्यूटर का अनुकरण करना है, इसलिए पुराना कंप्यूटर खरीदना एक बहुत ही सस्ता विकल्प है। :)
नाथन लांग

2

यह वास्तव में इस बात पर निर्भर करता है कि आप किस मशीन का अनुकरण करना चाहते हैं। यदि आप XP को 128 एमबी रैम में वापस रोल करते हैं, तो यह बहुत धीमी गति से होगा, उस बिंदु पर जहां मुझे यकीन नहीं है कि वर्चुअल प्रोसेसर की गति वास्तव में प्रासंगिक होगी। आप अपनी VM फ़ाइलों को एक पुराने USB1 बाहरी हार्ड ड्राइव से हटा सकते हैं (देखें कि क्या आप 4200 RPM ड्राइव पा सकते हैं)। कि चीजों को धीमा करना चाहिए।


2

VM को धीमा करने का एक निश्चित तरीका है कि आप इसके साथ कई क्लोन बना सकते हैं जैसे कि आप इसे साइड कर सकते हैं!

आपका प्रोसेसर, FSB, RAM और आपकी मशीन के अन्य सभी तेज़ घटक अन्य VMs के बीच कटा हुआ और डिसाइड हो जाएगा (जब तक आप उन्हें कुछ गहन कर रहे हैं - उदाहरण के लिए ओपन स्क्रीन स्क्रीनसेवर में से एक), और आप ऐसा महसूस करेंगे आप फिर से 1990 में हैं ...


सरल और काफी प्रभावी।
रोल

1

XP की अंतर्निहित गतिशील आवृत्ति स्विचिंग का उपयोग करके CPU आवृत्ति को नियंत्रित करने के लिए अतिथि XP VM में थोड़ी उपयोगिता स्थापित करें। उदाहरण के लिए, SpeedswitchXP जैसी उपयोगिता । मैंने कभी भी अपने आप को ऐसा कुछ करने की कोशिश नहीं की है, और संभावित रूप से समस्याएं हो सकती हैं यदि वर्चुअल सीपीयू जो कि VMWare अतिथि VM को प्रस्तुत करता है, गतिशील आवृत्ति स्विचन का समर्थन नहीं करता है।


1
मुझे डर है कि यह एक वीएम के लिए बहुत कम प्रभाव डालेगा, जहां सीपीयू केवल अनुकरण किया जाता है।
हरमीक

1
हाँ, मुझे नहीं लगता कि आवृत्ति बदलना एक विकल्प है; यह या तो काम नहीं करेगा (संभावना), या पूरे मेजबान ओएस (असंभव?) को कुचलना।
jpaugh

0

मैं एक स्लीप कमांड के साथ अनंत लूप थ्रेड का उपयोग करने के विचार का मनोरंजन करेगा और प्रक्रिया को प्राथमिकता देगा। यदि आप चाहते हैं कि मैं सी कोड का एक त्वरित हिस्सा एक साथ थप्पड़ मारूं तो मुझे बताएं।

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