IOMMU क्या है और क्या यह मेरे VM प्रदर्शन को बेहतर करेगा?


28

मेरा मदरबोर्ड का चिपसेट इस सुविधा को IOMMU का समर्थन करता है , मैंने पढ़ा है (लेकिन वास्तव में समझ में नहीं आया) यह VM प्रदर्शन को वर्चुअल हार्डवेयर के बजाय वास्तविक भौतिक हार्डवेयर का उपयोग करने देकर VM प्रदर्शन को बेहतर बनाता है।

क्या यह वास्तव में वीएम में प्रदर्शन में सुधार लाता है? और अगर यह करता है कि मैं कैसे Virtualbox से लाभ उठा सकते हैं?

जवाबों:


21

इतनी लंबी कहानी संक्षेप में, एक IOMMU एकमात्र तरीका आपकी मदद करेगा यदि आप HW संसाधनों को सीधे VM को असाइन करना शुरू करते हैं। बस होने से चीजें तेजी से नहीं बनती हैं।

यह जानने में मदद करेगा कि मदरबोर्ड / सीपीयू इस सुविधा का विज्ञापन क्या कर रहा है। IOMMU एक प्रणाली विशिष्ट IO मानचित्रण तंत्र है और इसका उपयोग अधिकांश उपकरणों के साथ किया जा सकता है।

IOMMU इंटेल VT-d और AMD IOV के लिए एक सामान्य नाम की तरह लगता है । जिस स्थिति में मुझे नहीं लगता कि आप डिवाइसेज़ को मल्टीप्लेक्स कर सकते हैं, यह पीसीआई पेसथ्रॉइट जैसा है, इससे पहले कि ये सभी फैंसी वर्चुअलाइजेशन निर्देश मौजूद हों :)। एसआर-आईओवी अलग है, परिधीय को स्वयं का समर्थन करना चाहिए। एचडब्ल्यू जानता है कि यह वर्चुअलाइज्ड हो रहा है और वीएम को खुद का एचडब्ल्यू स्लाइस सौंप सकता है । कई VMs SR-IOV डिवाइस से बहुत कम ओवरहेड के साथ बात कर सकते हैं।

एसआर-आईओवी की तुलना में एकमात्र चीज पीसीआई पेसथ्रू है, हालांकि उस स्थिति में केवल एक वीएम उस डिवाइस का उपयोग कर सकता है, यहां तक ​​कि मेजबान ऑपरेटिंग सिस्टम भी इसका उपयोग नहीं कर सकता है। PCI passthrough एक VM के लिए एक गहन डेटाबेस चलाने वाले के लिए उपयोगी होगा जो कि FiberChannel SAN से जुड़े होने से लाभान्वित होगा।

एचडब्ल्यू के करीब होने की सीमाएं हैं, लेकिन यह आपके वीएम को तैनाती के लिए कम पोर्टेबल बनाता है, उदाहरण के लिए लाइव प्रवास की आवश्यकता होती है। यह SR-IOV और PCI passthrough दोनों पर लागू होता है।

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


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

मैं सिर्फ एक्सएन विकी पढ़ता हूं, IOMMU वही करता है जो SR-IOV भी करता है, लेकिन मैं एक्सईएन का उपयोग नहीं करता हूं, और जाहिरा तौर पर वर्चुअलबॉक्स इसका अच्छा उपयोग नहीं करता है।
उरी हरेरा

नहीं, अधिकांश कंप्यूटरों में IOMMU नहीं है। शायद आप सोच रहे होंगे IO-APIC?
Psusi

1
वास्तव में यह विकिपीडिया लेख इसे बहुत अच्छी तरह से समझाता है: en.wikipedia.org/wiki/X86_virtualization । IOMMU समर्थन के लिए बड़ी जीत यह है कि हम रन टाइम में किन उपकरणों को बदल सकते हैं। इससे पहले कि हमें कर्नेल आर्ग लिस्ट में उपकरणों की एक श्रृंखला को निर्दिष्ट करना था और केवल वे ही पेरासट्रह के लिए योग्य थे। IOMMU आपको फिट देखते हुए उपकरणों को रीमैप करने की सुविधा देता है। फिर से यह एक्सक्लूसिव एक्सेस है, या तो आपका होस्ट इसका उपयोग कर रहा है, या VMs में से एक है। यह वास्तव में एक सर्वर केंद्रित सुविधा है।
पितृपक्ष 15

1
@ यूरीहेरा मैं आपको केवीएम का उपयोग करने की सलाह देता हूं, जो इंटेल और एएमडी के वर्चुअलाइजेशन एक्सटेंशन दोनों का समर्थन करता है। यह अधिक लचीला है और इसमें वर्चुअलबॉक्स में पाए जाने वाले फीचर भी शामिल हैं।
ऑक्सीविवि
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.