इंटेल 64 और AMD64 के बीच क्या अंतर है?


29

क्या कोई समझा सकता है कि क्या इंटेल 64 और एएमडी 64 आर्किटेक्चर के बीच कोई अंतर है?


3
IA64 = इंटेल / एचपी इटेनियम वीएलआईडब्ल्यू आर्किटेक्चर। AMD64 मानक x86 इंस्ट्रक्शन सेट का AMD विकसित एक्सटेंशन है।

6
विपणन। एएमडी ने इसे विकसित किया, फिर इसे इंटेल को लाइसेंस दिया। एएमडी इंटेल से x86 को लाइसेंस दे रहा है, और इंटेल एएमडी से एक्स 64 को लाइसेंस दे रहा है। यह सुनिश्चित करता है कि न तो अपने पूरे सीपीयू लाइनअप को बेचने के अधिकारों को खोने के बिना दूसरे पर मुकदमा कर सकते हैं, क्योंकि वे खुद को पैर में गोली मार रहे होंगे।

1
क्या आपका मतलब x86-64, या IA64 है? पूर्व AMD64 के समान है (शाब्दिक रूप से सटीक एक ही निर्देश सेट है, या आपको एक सीपीयू या अन्य के लिए सभी अनुप्रयोगों को फिर से संकलित करने की आवश्यकता होगी), और बाद वाला पूरी तरह से अलग सीपीयू वास्तुकला है।
ब्रेकथ्रू

2
मेरा मतलब है x86-64। इंटेल ने शुरू में IA-32e और EM64T नाम का इस्तेमाल किया और अंत में उनके कार्यान्वयन के लिए Intel 64 पर बसने से पहले।
तबाही

जवाबों:


26

मैंने मेमोरी 64-बिट टेक्नोलॉजी (EM64T) जो पढ़ा है, वह इंटेल के AMD के AMD64 के कार्यान्वयन और Intel64 और AMD64 के बीच अंतर हैं:

  • ईएम 64 टी के बीएसएफ और बीएसआर निर्देश स्रोत के 0 होने पर अलग तरीके से कार्य करते हैं और ऑपरेंड का आकार 32 बिट्स होता है। प्रोसेसर शून्य ध्वज सेट करता है और गंतव्य के ऊपरी 32 बिट्स को अपरिभाषित छोड़ देता है।

  • AMD64 3DNow का समर्थन करता है! निर्देश। इसमें ओपकोड 0x0F 0x0D और PREFETCHW के साथ प्रीफैच शामिल हैं, जो मेमोरी लेटेंसी को छिपाने के लिए उपयोगी हैं।

  • EM64T में फ्लोटिंग-पॉइंट स्टेट (FXSAVE और FXRSTOR निर्देशों को शामिल करने) के कम (और इस तरह तेज) संस्करण को बचाने और पुनर्स्थापित करने की क्षमता का अभाव है।

  • EM64T में कुछ मॉडल-विशिष्ट रजिस्टरों का अभाव है जिन्हें AMD64 का वास्तु माना जाता है। इनमें SYSCFG, TOP_MEM और TOP_MEM2 शामिल हैं।

  • EM64T 32-बिट मोड में माइक्रोकोड अपडेट का समर्थन करता है, जबकि AMD64 प्रोसेसर एक अलग माइक्रोकोड अपडेट प्रारूप का उपयोग करते हैं और MSRs को नियंत्रित करते हैं।

  • EM64T का CPUID निर्देश बहुत ही विक्रेता-विशिष्ट है, जैसा कि x86- शैली के प्रोसेसर के लिए सामान्य है।

  • EM64T हाइपर-थ्रेडिंग से निपटने के लिए ऑपरेटिंग सिस्टम द्वारा उपयोग किए जाने वाले MONITOR और MWAIT निर्देशों का समर्थन करता है।

  • AMD64 सिस्टम एक IO-MMU के रूप में एजीपी एपर्चर के उपयोग की अनुमति देता है। ऑपरेटिंग सिस्टम 4 जीबी से ऊपर की मेमोरी के लिए सामान्य पीसीआई उपकरणों को डीएमए करने के लिए इसका लाभ उठा सकते हैं। EM64T सिस्टम को बाउंस बफ़र्स के उपयोग की आवश्यकता होती है, जो धीमे होते हैं।

  • SYSCALL और SYSRET भी केवल IA-32e मोड (संगतता मोड में नहीं) EM64T पर समर्थित हैं। SYSENTER और SYSEXIT दोनों मोड में समर्थित हैं।

  • शाखाओं के पास 0 × 66 (ऑपरेंड आकार) उपसर्ग अलग तरीके से व्यवहार करते हैं। एक प्रकार का सीपीयू केवल शीर्ष 32 बिट्स को साफ करता है, जबकि दूसरा प्रकार शीर्ष 48 बिट्स को साफ करता है।


आपने वह पाठ कहां से पढ़ा?
तमारा वाइज्समैन

4
खैर, कुछ मंचों / ब्लॉग + विकिपीडिया ( en.wikipedia.org/wiki/EMT64#Intel_64 )। इसके अलावा, मैंने Intel और AMD के कुछ मैनुअल को देखा।
तबाही

@ नूबोक: कृपया आर्किटेक्चर की प्रौद्योगिकियों के कार्यान्वयन के माध्यम से अंतर जोड़ें (64 बिट संस्करण)  !
user2284570

IO-MMU एक बड़ी बात है - इसकी कमी का मतलब है कि आपको बफरिंग के लिए कम मेमोरी की गैर-तुच्छ राशि को भिगोना होगा (64MB लिनक्स पर वर्तमान डिफ़ॉल्ट है)। इंटेल ने बाद में VT-d के समान कुछ पेश किया और उत्पाद विभाजन के कष्टप्रद स्तर के लिए इसका इस्तेमाल किया - हालांकि कोड की विश्वसनीयता (और कुछ मामलों में सिलिकॉन) मूल में डिफ़ॉल्ट रूप से लिनक्स पर उपयोग नहीं किए जाने के कारण इसका परिणाम हुआ है। प्रयोजनों।
22

8

पर विकिपीडिया के 86 पेज आप पढ़ सकते हैं

1999-2003 में, AMD ने इस 32-बिट आर्किटेक्चर को 64 बिट्स तक बढ़ाया और शुरुआती दस्तावेजों में इसे x86-64 के रूप में और बाद में AMD64 के रूप में संदर्भित किया। इंटेल ने जल्द ही IA-32e नाम से AMD के आर्किटेक्चरल एक्सटेंशन को अपनाया जिसे बाद में EM64T और अंत में Intel 64 नाम दिया गया।

दूसरे शब्दों में, विभेदक मुख्य रूप से विपणन है। निर्देश सेट में इंटेल और एएमडी विशिष्ट एक्सटेंशन हैं, लेकिन जब तक आप उपयोगकर्ता अंतरिक्ष में कार्यक्रम लिख रहे हैं, तब तक आपको आम तौर पर अंतर जानने की जरूरत नहीं है।


3
you don't generally need to know the differenceगलत: सामान्य निर्देशों पर भी मामूली अंतर बहुत महत्वपूर्ण है bugs.chromium.org/p/nativeclient/issues/detail?id=2010
user2284570

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