2011-11-23 9 views
25

प्रदर्शन पर भारी प्रभाव के कारण, मुझे कभी आश्चर्य नहीं हुआ कि मेरे वर्तमान दिन डेस्कटॉप सीपीयू में शाखा भविष्यवाणी है या नहीं। बिलकुल यह करता है। लेकिन विभिन्न एआरएम प्रसाद के बारे में कैसे? क्या आईफोन या एंड्रॉइड फोन की शाखा भविष्यवाणी है? पुराना निन्टेन्दो डीएस? पावरपीसी आधारित वाईआई के बारे में कैसे? पीएस 3?वर्तमान CPUs पर शाखा पूर्वानुमान कितना प्रचलित है?

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

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

यदि यह अस्पष्ट है, तो मैं ऐसी भविष्यवाणी के बारे में बात कर रहा हूं जहां स्थिति बदल रही है, रनटाइम के दौरान अपेक्षित पथ को बदलना।

+0

यह वास्तव में एक दिलचस्प सवाल है! मैं भी सबसे लोकप्रिय एम्बेडेड प्रोसेसर के बारे में जानना चाहता हूं। – hippietrail

उत्तर

0

एआरएम कॉर्टेक्स-ए 8 (हालांकि इसमें कुछ शाखा भविष्यवाणी है) के लिए इतना कुछ नहीं है, लेकिन मेरा मानना ​​है कि कॉर्टेक्स-ए 9 जटिल शाखा भविष्यवाणी के साथ सुपर-स्केलर से बाहर है।

+0

धन्यवाद, लेकिन मैं एक और सामान्य उत्तर की तलाश में हूं। यह कहकर कि कॉर्टेक्स-ए 8 में "इतना ज्यादा नहीं है, लेकिन कुछ" या तो मदद नहीं कर रहा है। – porgarmingduod

+2

इसके अतिरिक्त, मैंने पाया कि एआरएम कॉर्टेक्स-ए 8 में मिस्ड शाखाओं के लिए 13 चक्र जुर्माना है, इसलिए मुझे लगता है कि यह कहना सुरक्षित है कि यह शाखा भविष्यवाणी को गंभीरता से लेता है। – porgarmingduod

10

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

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

+1

क्योंकि एनईओएन पाइपलाइन मुख्य एआरएम पाइपलाइन के पीछे है, यदि आप नियॉन गणना कर रहे हैं तो एक महत्वपूर्ण शाखा मिस पेनल्टी है। –

+0

@ एंथनी ब्लेक: अच्छा बिंदु - इसलिए शाखाओं के बजाय सशर्त निष्पादन का उपयोग करना शायद एक अच्छा विचार है जब आपके पास मिश्रण में नियॉन निर्देश हैं। –

10

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

पुराने एआरएम 7 डिजाइन केवल तीन चरण थे। शाखा विलंब स्लॉट (एमआईपीएस पर आवश्यक, एसपीएआरसी पर वैकल्पिक) जैसी चीजों के साथ, और शाखा भविष्यवाणी इतनी उपयोगी नहीं है।

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

शाखा देरी स्लॉट के साथ समस्या यह है कि यह केवल 50% समय के उपयोगी निर्देश से भरा जा सकता है। शेष समय, आप या तो इसे एक ऐसे निर्देश से भरें जिसके परिणामस्वरूप फेंक दिया जा सकता है, या आप नो-ओपी का उपयोग करते हैं।

+1

जानकारीपूर्ण। मुझे अनुमान लगाया जा रहा है कि अनुमानित "कटऑफ" कहां हो सकता है। – porgarmingduod

4

शाखा भविष्यवाणी अधिक महत्वपूर्ण हो रही है और जोर दिया गया है जबकि एआरएम अधिक जटिल हो रहा है।

उदाहरण के लिए एआरएमवी 8 नामक नया 64-बिट एआरएम आर्किटेक्चर सशर्त निष्पादन (मुख्य रूप से रजिस्ट्रारों की बढ़ी हुई संख्या के साथ निर्देश एन्कोडिंग स्पेस प्रतिबंधों के कारण) का उपयोग करता है और स्वीकार्य स्तर पर प्रदर्शन को बनाए रखने के लिए शाखा पूर्वानुमान पर निर्भर करता है।

नए एआरएमवी 7 के लिए भी - एक डिवाइस आप unsorted data question on SO जैसे भयानक मामलों की जांच कर सकते हैं, जो शाखा भविष्यवाणी सुधार लगभग 3x है।

0

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

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

संबंधित मुद्दे