सीपीयू कैश क्या है?

click fraud protection

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

सीपीयू कैश सीपीयू को कैसे गति देता है?

सीपीयू कैश को यथासंभव तेज और फिर सीपीयू द्वारा अनुरोधित डेटा को कैश करने के लिए डिज़ाइन किया गया है। सीपीयू कैश की गति को तीन तरीकों से अनुकूलित किया गया है: विलंबता, बैंडविड्थ और निकटता। सीपीयू कैश बहुत कम विलंबता पर काम करता है, परिणाम को वापस करने में लगने वाले समय को कम करता है। उदाहरण के लिए, इंटेल i9-9900k में क्रमशः L1, L2, और L3 कैश के लिए 0.8, 2.4 और 11.1 नैनोसेकंड की कैश विलंबता है। इसकी तुलना में आधुनिक हाई-स्पीड रैम की लेटेंसी 14 नैनोसेकंड के ऑर्डर पर है।

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

बैंडविड्थ के संदर्भ में, सीपीयू कैश पारंपरिक भंडारण और रैम पर महत्वपूर्ण प्रदर्शन सुधार प्रदान करता है। L1 और L3 कैश की रीड स्पीड क्रमशः 2.3 TB/s और 370 GB/s पर चरम पर पहुंच सकती है, जबकि RAM की बैंडविड्थ आमतौर पर लगभग 40 GB/s होती है। इस बढ़ी हुई बैंडविड्थ का मतलब है कि सीपीयू कैश रैम की तुलना में सीपीयू में डेटा को बहुत तेजी से स्थानांतरित कर सकता है।

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

सीपीयू कैश आर्किटेक्चर

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

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

L3 कैश आमतौर पर प्रोसेसर के सभी CPU कोर के बीच साझा किया जाता है। फिर से, L3 कैश L2 कैश की तुलना में धीमा है, लेकिन सस्ता और बड़ा है। साझा कैश प्रदान करके प्रति-कोर कैश के निचले स्तरों पर डुप्लिकेट किए जाने वाले डेटा की मात्रा को कम करना संभव है।

युक्ति: उदाहरण के तौर पर, कैश आकार में, Intel के i9-9900K में 64KB L1 और 256KB L2 कैश प्रति-कोर (कुल 512KB L1 और 2MB L2 के लिए) है, इसमें 16MB साझा L3 कैश भी है।

CPU कैश का उपयोग कैसे किया जाता है?

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

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