मैं मल्टी-कोर प्रोसेसर में घड़ी की गति की गणना कैसे करूं?


23

उदाहरण के लिए, क्या यह कहना सही है कि 3GHz पर चलने वाले प्रत्येक में चार कोर वाला प्रोसेसर वास्तव में 12GHz पर चलने वाला प्रोसेसर है?

मैं एक बार "मैक बनाम पीसी" तर्क में शामिल हो गया (जो वैसे भी इस विषय का ध्यान नहीं है ... जो कि मिडिल स्कूल में था) एक परिचित के साथ, जिसने जोर देकर कहा कि मैक को केवल 1Ghz मशीनों के रूप में विज्ञापित किया जा रहा है क्योंकि वे 500MHz पर चलने वाले प्रत्येक में दोहरे प्रोसेसर G4s थे।

जिस समय मुझे पता था कि यह उन कारणों के लिए हॉगवॉश है, जो मुझे लगता है कि ज्यादातर लोगों के लिए स्पष्ट हैं, लेकिन मैंने इस वेबसाइट पर "6 कोर x 0.2GHz = 1.2Ghz" के प्रभाव के बारे में एक टिप्पणी देखी और मुझे इस बारे में फिर से विचार करना पड़ा कि क्या इसका वास्तविक उत्तर है।

तो, यह घड़ी की गति गणना के शब्दार्थों के बारे में अधिक या कम दार्शनिक / गहन तकनीकी प्रश्न है। मुझे दो संभावनाएँ दिखती हैं:

  1. प्रत्येक कोर वास्तव में प्रति सेकंड एक्स गणना कर रहा है, इस प्रकार गणना की कुल संख्या x (कोर) है।
  2. घड़ी की गति बल्कि चक्रों की संख्या की एक गिनती है जो प्रोसेसर एक दूसरे के स्थान पर जाता है, इसलिए जब तक सभी कोर एक ही गति से चल रहे हैं, प्रत्येक घड़ी चक्र की गति समान रहती है, चाहे कितने कोर मौजूद हों । दूसरे शब्दों में, Hz = (core1Hz + core2Hz + ...) / कोर।

यहाँ कई उत्तर यह समझाने का एक अच्छा काम करते हैं कि क्यों एक क्वाड-कोर 2 गीगाहर्ट्ज प्रोसेसर जरूरी नहीं कि एक सिंगल-कोर 8 गीगाहर्ट्ज प्रोसेसर के बराबर हो। हालाँकि, मैं एक मुश्किल समय को विभाजित कर रहा हूं कि किसी अनुप्रयोग के लिए एक सिस्टम की उपयुक्तता तय करते समय मल्टी-कोर प्रोसेसर की गति को कैसे माना जाना चाहिए जो अपनी आवश्यकताओं में विशिष्ट गति और कोर की संख्या को सूचीबद्ध करता है? (उदाहरण: बॉर्डरलैंड्स 2 में 2.4 गीगाहर्ट्ज के दोहरे कोर प्रोसेसर की आवश्यकता होती है। क्या हमें कम गति वाले क्वाड-कोर या उच्च गति वाले सिंगल-कोर से भी ऐसा करने की अपेक्षा करनी चाहिए?) क्या यह (या यह हो सकता है) यहां उत्तर दिया गया है, या यह एक अलग प्रश्न होना चाहिए?
— इज़्ज़ी

@ आईज़ी यह एक और प्रश्न होना चाहिए, लेकिन यह संभावना है कि बॉर्डरलैंड्स एक से अधिक थ्रेड के लिए अनुकूलित हैं यदि वे अपनी आवश्यकताओं में "दोहरे कोर" शामिल हैं। उस स्थिति में, सिंगल-कोर प्रोसेसर की सिफारिश नहीं की जाएगी, लेकिन यह स्पष्ट नहीं है कि क्या यह> 2 कोर का लाभ ले सकता है।
— NReilingh

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

जवाबों:


35

क्वाड-कोर 3GHz प्रोसेसर का मुख्य कारण कभी भी एक 12GHz सिंगल कोर जितना तेज़ नहीं होता है, यह उस प्रोसेसर के काम करने के तरीके के साथ होता है, यानी सिंगल-थ्रेडेड या मल्टी-थ्रेडेड। आपके द्वारा चलाए जा रहे कार्यों के प्रकारों पर विचार करते समय अमदहल का नियम महत्वपूर्ण है।

यदि आपके पास एक कार्य है जो स्वाभाविक रूप से रैखिक है और इसे ठीक-ठीक चरण-दर-चरण किया जाना है जैसे कि (एक साधारण कार्यक्रम)

10: a = a + 1
20: goto 10

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

अब एक काम ले लो जैसे:

10: a = a + 1
20: b = b + 1
30: c = c + 1
40: d = d + 1
50: goto 10

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

इसलिए यदि आपके पास एक थ्रेडेड एप्लिकेशन है जो ब्रूट फोर्स कैलकुलेशन करता है तो सिंगल 12GHz प्रोसेसर हाथ से जीत जाएगा, अगर आप किसी तरह टास्क को अलग-अलग हिस्सों में विभाजित कर सकते हैं और मल्टी-थ्रेडेड हो सकते हैं तो 4 कोर के करीब आ सकते हैं, लेकिन काफी पहुंच नहीं है, Amdahl के नियम के अनुसार समान प्रदर्शन।

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

"6 कोर x 0.2GHz = 1.2Ghz" का तर्क हर स्थिति में बकवास है, सिवाय इसके कि जहां कार्य पूरी तरह से समानांतर और स्वतंत्र हैं। ऐसे कार्यों की एक अच्छी संख्या है जो अत्यधिक समानांतर हैं, लेकिन उन्हें अभी भी कुछ प्रकार के सिंक्रनाइज़ेशन की आवश्यकता होती है। हैंडब्रेक एक वीडियो ट्रांसकोडर है जो उपलब्ध सभी सीपीयू का उपयोग करने में बहुत अच्छा है, लेकिन इसमें डेटा से भरे हुए अन्य थ्रेड्स को रखने और उनके साथ किए गए डेटा को इकट्ठा करने के लिए एक मुख्य प्रक्रिया की आवश्यकता होती है।

  1. प्रत्येक कोर वास्तव में प्रति सेकंड एक्स गणना कर रहा है, इस प्रकार गणना की कुल संख्या x (कोर) है।

प्रत्येक कोर x गणना करने में सक्षम है प्रति सेकंड, यह मानते हुए कि कार्यभार उपयुक्त है समानांतर, एक रैखिक कार्यक्रम पर आपके पास 1 कोर है।

  1. घड़ी की गति बल्कि चक्रों की संख्या की एक गिनती है जो प्रोसेसर एक दूसरे के स्थान पर जाता है, इसलिए जब तक सभी कोर एक ही गति से चल रहे हैं, प्रत्येक घड़ी चक्र की गति समान रहती है, चाहे कितने कोर मौजूद हों । दूसरे शब्दों में, Hz = (core1Hz + core2Hz + ...) / कोर।

मुझे लगता है कि 4 x 3GHz = 12GHz, यह सोचने की गिरावट है कि गणित ने काम दिया है, लेकिन आप सेब की तुलना संतरे से कर रहे हैं और सिर्फ सही नहीं हैं, हर स्थिति के लिए GHz को एक साथ नहीं जोड़ा जा सकता है। मैं इसे 4 x 3GHz = 4 x 3GHz में बदल दूंगा।


अच्छी पोस्ट .. 1+ से अधिक वोट नहीं दे सके :-(
— गोपालकृष्णन सुब्रमणि

लेकिन amdahl का नियम एक प्रोग्रामिंग चिंता है, जो लॉकिंग के कारण होता है, हार्डवेयर चिंता का विषय नहीं है। यदि आपको सिंक्रनाइज़ करने की आवश्यकता नहीं है, तो प्रत्येक कोर तेजी से निर्देशों को निष्पादित कर सकता है जितना कि यह जा सकता है। एक समानांतर कार्यक्रम (एक साधारण एक) को डिज़ाइन कर सकता है जो कोर के बीच पूरी तरह से विभाजित होगा। क्या हार्डवेयर निर्माता इस कच्चे मूल्य का विज्ञापन नहीं करेंगे?
— जस्टिन मीनर्स

स्पष्ट करने के लिए, मुझे समझ में आया कि यह क्यों इस सवाल का जवाब देता है कि 3 ghz पर 4 कोर 12gz के रूप में व्यवहार में उतने तेज़ क्यों नहीं हैं, लेकिन मल्टीकोर के लिए घड़ी की गति की गणना नहीं की जाती है।
— जस्टिन मीनर्स

प्रति कोर @JustinMeiners घड़ी की गति बस घड़ी की गति है कोर पर चलाता है। ऐसी कोई जादुई गणना नहीं है जो सिंगल कोर को मल्टीकोर के बराबर बनाए। एकाधिक कोर का मतलब है कि आप एक साथ अधिक अलग-अलग कार्य चला सकते हैं। Amdahls कानून सॉफ्टवेयर की वजह से लागू होता है, आवश्यक सिंक्रनाइज़ेशन और लॉकिंग कार्य को हार्डवेयर में "पूर्ण" होने से रोक देगा, जितना कि सॉफ्टवेयर। साझा किए गए कैश और मेमोरी के कारण विवाद और ताले उत्पन्न होते हैं।
— Mokubai

@ मोकूबाई स्पष्ट करने के लिए, जब कोई निर्माता घड़ी की गति को सूचीबद्ध करता है, तो प्रत्येक व्यक्ति की कोर गति से चलती है, सही है?
— जस्टिन मीनर्स

6

दूसरों ने तकनीकी दृष्टिकोण से एक अच्छा तर्क दिया। मैं इसके बजाय सरल उपमाओं की एक जोड़ी बनाऊंगा जो मुझे आशा है कि समझाएगा कि 4 * 3 जीएचजेड 1 * 12 जीएचजी के बराबर क्यों नहीं है।

उदाहरण के लिए एक महिला नौ महीने में एक बच्चे का निर्माण कर सकती है। क्या नौ महिलाएं एक महीने में एक बच्चा पैदा कर पाएंगी? नहीं, क्योंकि गर्भावधि को समानांतर नहीं किया जा सकता है (ठीक है, कम से कम इस तकनीकी स्तर पर)।

यहाँ एक और है: एक पनबिजली संयंत्र में मैंने हाल ही में दौरा किया, जनरेटर में से एक को उन्नत किया जा रहा था। उन्हें जहाज द्वारा जनरेटर के स्टेटर को परिवहन करना था। स्टेटर का एक छठा ट्रक द्वारा ले जाया जा सकता था, लेकिन उन्हें पूरे स्टेटर को परिवहन करने की आवश्यकता थी; इसलिए उन्हें एक ट्रक का इस्तेमाल करना था, छह ट्रकों का नहीं।

एक और मामला घटनाओं का सटीक समय हो सकता है। कभी-कभी कंप्यूटर प्रोसेसर का उपयोग सटीक टाइमर के रूप में किया जाता है (हालांकि अभ्यास अब अनुशंसित नहीं है, क्योंकि अधिकांश प्रोसेसर पर चर घड़ी है। इसके बजाय उच्च परिशुद्धता घटना टाइमर का उपयोग किया जाना चाहिए)। यदि हम मानते हैं कि हमारे पास अपेक्षाकृत स्थिर 12GHz घड़ी के साथ एक प्रोसेसर है, तो हम 3GHz घड़ी के साथ प्रोसेसर की तुलना में बहुत अधिक रिज़ॉल्यूशन में समय को मापने के लिए इसका उपयोग कर सकते हैं। हमारे पास कितने भी 3GHz कोर क्यों न हों, हम 12GHz कोर के रिज़ॉल्यूशन तक नहीं पहुँच पाएंगे। यह 7-सेगमेंट डिस्प्ले के साथ 4 घड़ियां होने जैसा है जहां प्रत्येक घड़ी घंटों में सही समय प्रदर्शित करती है। कोई फर्क नहीं पड़ता कि वे कितने सही ढंग से घंटे दिखाते हैं, आप उन्हें एक सेकंड रेंज में समय अंतराल को मापने के लिए उपयोग नहीं कर सकते हैं।


कम तकनीकी दिमाग वाले के लिए उपयोगी उत्तर। इसके अलावा, मुझे उपमाएं पसंद हैं :)
— aff

3

मैं इस विषय का विशेषज्ञ नहीं हूं, लेकिन मेरे पास कंप्यूटर इंजीनियरिंग की डिग्री है। में सिद्धांत (यह एक अत्यधिक वैचारिक जवाब है), एक क्वाड-कोर 3GHz प्रत्येक प्रोसेसर कर सकते हैं एक 12GHz प्रोसेसर के बराबर है, उदाहरण के लिए, वहाँ एक भी अंतिम परिणाम के लिए आवश्यक गणना के चार सेट थे। इसे ही समानांतर प्रसंस्करण कहा जाता है।

तर्क को सरल बनाने के लिए, मान लें कि हम दोहरे कोर प्रोसेसर के बारे में बात कर रहे हैं। यदि गणना का एक सेट होता, तो कहते हैं:

एक = बी + 1;

c = d + 1;

फिर, उन दो गणनाओं को अलग-अलग कोर पर निष्पादित किया जा सकता है, और एक xGHz प्रोसेसर एक सिंगल-कोर 2 *GHz प्रोसेसर के बराबर होगा। ऐसा इसलिए है क्योंकि एक्स गति से की गई दो गणनाओं को एक ही समय में संसाधित किया जाएगा। जबकि सिंगल-कोर प्रोसेसर 2 * x स्पीड पर कर सकता है लेकिन एक के बाद एक। यदि दो CPU एक ही समय में इस कोड को निष्पादित करते हैं, तो वे एक ही समय में समाप्त हो जाते हैं। हालाँकि, यदि कोड थे:

एक = बी + 1;

ग = एक + 1;

फिर, दोहरे-कोर प्रोसेसर को सिंगल-कोर प्रोसेसर से दोगुना समय लगेगा क्योंकि दूसरे निर्देश में, ए का मूल्य पहले निर्देश पर निर्भर है और इस तरह समानांतर में निष्पादित नहीं किया जा सकता है। यह है कि कुछ सॉफ़्टवेयर बहु-थ्रेडेड प्रोसेसर का लाभ उठा सकते हैं।

तो, सिद्धांत रूप में, एक 3 जीएचजेड क्वाड-कोर प्रोसेसर की तुलना में 12GHz सिंगल-कोर प्रोसेसर हमेशा तेज (या तेज) चल सकता है, लेकिन इसके विपरीत नहीं।


ध्यान दें कि यह गणना केवल तभी तेज होगी, जब यह विकृत हो, और फिर भी एक मामूली ओवरहेड हो। लेकिन हाँ, जबकि एक ही कोर प्रोसेसर बनाना संभव है, जो कई गणनाएँ कर सकता है, यह बस गर्मी और सामान के कारण प्रशंसनीय नहीं है।
— फोशी जूल

यह उत्तर दो कारणों से भ्रामक है। सबसे पहले, आधुनिक कोर एक समय में एक से अधिक काम करते हैं। दूसरा, उत्तर मानता है कि मुख्य गति उसी दर के समान है जिस पर काम किया जाता है। अगर एक ही काम को पूरा करने के लिए सिंगल-कोर प्रोसेसर को अधिक क्लॉक साइकिल की आवश्यकता होती है, तो 12GHz सिंगल-कोर प्रोसेसर 3 जीएचजेड क्वाड-कोर प्रोसेसर के रूप में तेज़ नहीं चलेगा। (यह एक 12GHz प्रोसेसर के बाद से बहुत अधिक पाइपलाइनों की आवश्यकता होगी।)
— डेविड श्वार्ट्ज

2

यह उत्तर देने के लिए एक जटिल प्रश्न है, लेकिन संक्षिप्त उत्तर है: नहीं

वास्तविक दुनिया के अनुप्रयोगों में चार 3Ghz प्रोसेसर अक्षमताओं के कारण एक 12Ghz प्रोसेसर के समान तेज़ नहीं होंगे। वे बहुत करीब हो सकते हैं, लेकिन वे प्रसंस्करण शक्ति के मामले में एक भी प्रोसेसर के बराबर नहीं होंगे।

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

इस लेख पर नज़र डालें: http://en.wikipedia.org/wiki/Amdahl%27s_law


आप सही और गलत हैं। "वास्तविक दुनिया" अनुप्रयोगों में एक एकल 12ghz प्रोसेसर की तुलना में चार 3ghz प्रोसेसर सबसे अधिक संभावना होगा। इन दिनों अधिक से अधिक कार्यक्रम मल्टी-थ्रेडिंग का उपयोग कर रहे हैं, आपके द्वारा दी गई लिंक एक सैद्धांतिक एकल थ्रेड एप्लिकेशन का उल्लेख कर रही है। 12ghz के एक एकल प्रोसेसर में केवल एक धागा होता है, इसलिए मल्टी-थ्रेडिंग लाभ एक "वास्तविक दुनिया" कार्यक्रम की पेशकश करने के लिए खो जाएगा। उद्योग केवल कम कोर के बजाय अधिक धीमी कोर की ओर नहीं जा रहा है, क्योंकि मल्टी-कोर प्रौद्योगिकी के लाभ तेजी से एकल कोर प्रौद्योगिकी के लाभों से आगे निकल जाते हैं।
— यूबिकिबाकॉन

3
@typoknig: यह बिल्कुल सच नहीं है। एक 6GHz सिंगल-कोर प्रोसेसर एक बहु-थ्रेडेड एप्लिकेशन को 3 जीएचजेड दोहरे कोर प्रोसेसर के समान गति से चलाएगा, यह मानते हुए कि ऐप हर धागे का पूरा फायदा उठा रहा है (जो कि ऐसा संभव नहीं है अगर यह "वास्तविक" है विश्व अनुप्रयोग ", लेकिन यह एक अलग तर्क है)। हम 12GHz प्रोसेसर नहीं देखते हैं क्योंकि यह वर्तमान तकनीक के साथ बहुत कठिन है, इसलिए नहीं कि यह धीमा है।
— साशा चेदिगोव

4
@typoknig: मैंने कुछ उत्परिवर्तित कार्यक्रमों को प्रोग्राम किया है और मुझे विश्वास है, अगर मेरे पास एक 12Ghz प्रोसेसर था, तो इसके बजाय आईडी का उपयोग करें। सिंगल थ्रेडेड प्रोग्रामिंग 10x आसान है और म्यूटेड थ्रेडेड प्रोग्रामिंग की तुलना में बहुत अधिक कुशल है। असली कारण यह है कि उद्योग जो घुमा रहा है म्यूटिकोर प्रोसेसर बढ़ रहा है क्योंकि वे तेज नहीं हैं, इसकी वजह यह है कि हम व्यक्तिगत सीपीयू को तेजी से नहीं चला सकते हैं! इसे पी 4 दिनों में इंटेल की नेटबर्स्ट तकनीक के साथ रेखांकित किया गया था। उन्होंने अनुमान लगाया कि 10Ghz प्रोसेसर, कम से कम, जब तक कि क्वांटम भौतिकी ने उन्हें चेहरे पर थप्पड़ मारा और कहा कि "नो नोब!"
— फुल जूल

2
@typokning: F22 प्रति सेकंड 10 बिलियन निर्देशों को प्राप्त करने के लिए पावरपीसी प्रोसेसर की एक सरणी का उपयोग करता है, जो 10Ghz होने से बहुत अलग है! अपने रेडियन HD5970 4600Ghz पर काम कर रहा है। यह 4.6 TFLOPS के लिए सक्षम है, लेकिन केवल इसलिए कि यह बहुत समानांतर है।
— फेन

1
@typoknig: आप स्पष्ट रूप से सीपीयू आवृत्ति और आईपीएस (प्रति सेकंड निर्देश) के बीच अंतर को नहीं समझते हैं, वे एक ही में नहीं हैं। पढ़ा करें: en.wikipedia.org/wiki/Instructions_per_second
— Faken

2

ऐसा प्रतीत होता है कि हम यह नहीं कह सकते हैं कि 4 कोर @ 3 गीगाहर्ट्ज़ को 12 गीगाहर्ट्ज़ कहा जा सकता है।

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

इसके अलावा मैंने कहीं पढ़ा है कि अगर हम चिप (सीएमपी) पर एम्बेड किए गए ट्रांजिस्टर को दोगुना करते हैं, तो हम जो गति प्राप्त करने जा रहे हैं वह केवल 40% है। यह इस विषय को भी एक महत्वपूर्ण संकेत प्रदान करता है।


1

जहाँ तक निष्पादित चक्रों का सवाल है, हाँ एक मल्टी-कोर प्रोसेसर x * coresप्रति सेकंड काम के चक्र को पूरा करता है । परंपरागत रूप से, घड़ी की गति को आसान तुलना के लिए प्रति-कोर आधार पर सूचीबद्ध किया गया है (अन्यथा आप आसानी से 2GHz / कोर बनाम 1GHz / core चल रहे 4GHz क्वाड-कोर चिप पर चलने वाले 4GHz दोहरे कोर चिप की तुलना कैसे करेंगे?)

दुर्भाग्य से, समस्या तब जटिल हो जाती है जब आप वास्तविक दुनिया के अनुप्रयोगों में विभिन्न प्रोसेसर की तुलना करने की कोशिश करते हैं।

सबसे पहले, अधिकांश मल्टी-कोर प्रोसेसर में कोर (उदाहरण के लिए सीपीयू कैश) के बीच कुछ संसाधन साझा होते हैं। उन्हें उस कैश तक पहुंच साझा करनी होगी, ताकि आपके पास कोर स्टोर करने या डेटा पढ़ने की पूरी गति न हो। यह अक्सर कई-साझा सीपीयू होने से कई-कोर सीपीयू में समाप्‍त हो जाता है (जैसे कि अधिकांश क्वाड-कोर चिप्स में 2 कैश होते हैं, प्रत्येक को कोर की एक जोड़ी द्वारा साझा किया जाता है), ताकि एक साझा संसाधन पर अड़चन की संभावना को बेहतर ढंग से विभाजित किया जा सके।

गैर-तकनीकी दुनिया में दूसरा, और शायद कम जाना जाता है, यह है कि घड़ी की गति की तुलना कभी-कभी सेब और संतरे की तुलना करने जैसी हो सकती है। अलग-अलग सीपीयू एक ही घड़ी के चक्र में एक अलग मात्रा में काम पूरा करते हैं, इसलिए कहते हैं कि आपके पास 1GHz बनाम 1.2GHz की आवाज़ है, लेकिन 1GHz चिप वास्तव में दिए गए अंतराल में अधिक काम कर सकती है। पेंटियम 4 ने इस बिंदु को घर पर पहुंचा दिया, जिससे मेगाहर्ट्ज़ मिथ (जिसके बारे में मुझे नहीं पता था कि इस पोस्ट को लिखने तक कोई नाम नहीं मिला है) है।


घड़ी की गति "प्रति-कोर आधार" पर सूचीबद्ध नहीं है। गति कभी भी "प्रति" कुछ भी नहीं है। यदि कोई कार 50 मील प्रति घंटे की गति से जा रही है, तो गति 50 मील प्रति घंटा है। यदि दो कारें 50 मील प्रति घंटे की रफ्तार से चल रही हैं, तो गति अभी भी 50 मील प्रति घंटा है। एक "गति प्रति कार" का विचार अर्थहीन और असंगत है।
— डेविड श्वार्ट्ज

1

50 मील प्रति घंटे की रफ्तार से जा रही दो कारें प्रति घंटे 100 मील की दूरी तक "नहीं जोड़ती" हैं। वास्तव में यह उतना आसान है। प्रोसेसर की घड़ी की गति उस दर की माप नहीं है जिस पर काम किया जाता है, यह एक उपाय है कि घड़ी कितनी तेजी से टिकती है।

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