CPU कैश मेमोरी को मुख्य मेमोरी की तुलना में बहुत तेज क्या बनाता है? मैं एक tiered कैश सिस्टम में कुछ लाभ देख सकते हैं। यह समझ में आता है कि एक छोटा कैश खोज करने के लिए तेज़ है। लेकिन इसमें और भी बहुत कुछ होना चाहिए।
CPU कैश मेमोरी को मुख्य मेमोरी की तुलना में बहुत तेज क्या बनाता है? मैं एक tiered कैश सिस्टम में कुछ लाभ देख सकते हैं। यह समझ में आता है कि एक छोटा कैश खोज करने के लिए तेज़ है। लेकिन इसमें और भी बहुत कुछ होना चाहिए।
जवाबों:
सीपीयू कैश के मामले में, यह तेज़ है क्योंकि यह प्रोसेसर के समान ही मर जाता है। दूसरे शब्दों में, अनुरोधित डेटा को प्रोसेसर पर नहीं होना चाहिए; यह पहले से ही है।
हार्ड ड्राइव पर कैश के मामले में, यह तेज़ है क्योंकि यह ठोस स्थिति मेमोरी में है, और अभी भी घूमने वाले प्लैटर्स पर नहीं है।
एक वेब साइट पर कैश के मामले में, यह तेज़ है क्योंकि डेटा पहले ही डेटाबेस से पुनर्प्राप्त कर लिया गया है (जो, कुछ मामलों में, दुनिया में कहीं भी स्थित हो सकता है)।
तो यह स्थानीयता के बारे में है , ज्यादातर। कैश डेटा ट्रांसफर स्टेप को खत्म करता है ।
स्थानीयता डेटा को कहने का एक शानदार तरीका है जो समय या स्थान में "एक साथ करीब" है। एक छोटी, तेज़ (लेकिन आमतौर पर अधिक महंगी) मेमोरी के साथ कैशिंग करना काम करता है क्योंकि आम तौर पर समग्र डेटा की अपेक्षाकृत कम मात्रा वह डेटा होता है जिसे सबसे अधिक बार एक्सेस किया जा रहा है।
विकिपीडिया पर आगे पढ़ना
कैश (कम्प्यूटिंग)
यह तेज है क्योंकि यह करीब है और क्योंकि यह SRAM है DRAM नहीं।
SRAM है और DRAM की तुलना में काफी तेज हो सकता है क्योंकि मानों को सांख्यिकीय रूप से ( S RAM में S ) रखा जाता है, इसलिए उन्हें ताज़ा नहीं करना पड़ता है जो चक्र को दूर ले जाता है। DRAM गतिशील है, छोटे रिचार्जेबल बैटरी की तरह, आपको नियमित रूप से रिचार्ज करना होगा ताकि वे दूर न जाएं और शून्य हो जाएं। यह चक्र का समय चुराता है इसके अलावा आपको बिट्स कैसे एक्सेस करना है, आदि।
प्रोसेसर के पास या उससे कम उम्र में ही मरने के कारण, राउंड ट्रिप कम हो जाती है, L1 और L2 दोनों एक्सेस के नजरिए से DRAM से तेज हैं।
SRAM सेब की तुलना में DRAM द्वारा लिए गए सेब की तुलना में अधिक तेज़ है, और कैश आमतौर पर चिप या नज़दीकी या तेज़ ब्रास पर होता है, जो DRAM की तुलना में पहुँच के समय को तेज़ बनाता है।
स्पष्ट रूप से उल्लेख किया जाना चाहिए कि एक चीज प्रकाश की गति का प्रभाव है। में इस वीडियो को अनुग्रह हूपर एक फुट लंबी है, जो कितनी दूर एक विद्युत संकेत nanosecond एक में यात्रा कर सकते हैं * है के बारे में तार का एक टुकड़ा पता चलता है। यदि सीपीयू 3 जीएचजेड पर काम कर रहा है, तो इसका मतलब है कि प्रति घड़ी चक्र की दूरी 4 "है। यह मेमोरी एक्सेस स्पीड के लिए एक कठिन शारीरिक सीमा है। सीपीयू के करीब होने (एल 1 कैश के रूप में) का एक बड़ा हिस्सा यह अनुमति देता है। याददाश्त तेज होना।
EDIT * वास्तव में एक वैक्यूम में कितनी दूर तक यात्रा कर सकता है, तांबा / सिलिकॉन के माध्यम से दूरी कम है।
अन्य उत्तर पहले से ही सभी प्रासंगिक बिट्स को कवर करते हैं: स्थानीयता (और संबंधित डेटा ट्रांसफर लागत, बस की चौड़ाई और घड़ी, और इसी तरह); प्रकाश की गति (फिर से, स्थानांतरण लागत और बस की चौड़ाई और थ्रूपुट से जुड़ी); विभिन्न स्मृति प्रौद्योगिकी (SRAM बनामDRAM)। यह सब लागत / प्रदर्शन संतुलन की रोशनी में देखा गया ।
एक बिट जो छोड़ दिया गया था और यह सिर्फ डार्कहॉग टिप्पणी में उल्लिखित है: बड़े कैश में बेहतर हिट दर लेकिन अधिक विलंबता है। कैश के कई स्तर जहां इस ट्रेडऑफ को संबोधित करने के लिए पेश किए गए हैं।
इलेक्ट्रॉनिक्स एसई पर इस बिंदु पर एक उत्कृष्ट सवाल और जवाब है
जवाबों से, यह मुझे लगता है कि हाइलाइट किया जाने वाला एक बिंदु है: एक तर्क जो कैश रीड के लिए सभी आवश्यक संचालन करता है, वह इतना आसान नहीं है (विशेषकर अगर कैश सेट-एसोसिएटिव है, जैसे अधिकांश कैश आज)। इसके लिए द्वार, और तर्क की आवश्यकता होती है। इसलिए, भले ही हम लागत और मरने के स्थान से इनकार करते हैं
यदि कोई हास्यास्पद रूप से बड़े एल 1 कैश को लागू करने की कोशिश करेगा, तो तर्क जो कैश रीड के लिए सभी आवश्यक संचालन करता है, वह भी बड़ा हो जाएगा। कुछ बिंदु पर, इस सभी तर्क के माध्यम से प्रसार में देरी बहुत लंबी होगी और जो ऑपरेशन पहले से एक ही घड़ी चक्र ले चुके थे, उन्हें कई घड़ी चक्रों में विभाजित करना होगा। यह विलंबता को बढ़ाएगा।
अन्य उत्तरों में बहुत सारे अच्छे अंक उठाए गए हैं, लेकिन एक कारक गायब प्रतीत होता है: पता डिकोडिंग विलंबता।
निम्नलिखित एक विशाल ओवरसाइम्प्लीफिकेशन है कि मेमोरी एड्रेस डिकोडिंग कैसे काम करता है, लेकिन यह एक अच्छा विचार देता है कि बड़े DRAM चिप्स आमतौर पर बहुत धीमे क्यों होते हैं।
जब प्रोसेसर को मेमोरी एक्सेस करने की आवश्यकता होती है, तो यह उस विशिष्ट शब्द का चयन करने के लिए मेमोरी चिप को एक कमांड भेजता है जिसे वह उपयोग करना चाहता है। इस कमांड को एक कॉलम एड्रेस सिलेक्ट कहा जाता है (हम अभी के लिए पंक्ति पतों की उपेक्षा करेंगे)। मेमोरी चिप को अब अनुरोध किए गए कॉलम को सक्रिय करना होगा, जो यह करता है कि एक एकल लिखने के लिए तर्क गेट्स के एक झरने के नीचे पता भेजकर जो स्तंभ में सभी कोशिकाओं से जुड़ता है। यह कैसे लागू किया जाता है इसके आधार पर, प्रत्येक बिट पते के लिए एक निश्चित मात्रा में देरी होगी, जब तक कि परिणाम दूसरे छोर से नहीं निकलता। इसे मेमोरी का CAS लेटेंसी कहा जाता है। क्योंकि उन बिट्स की क्रमिक रूप से जांच की जानी है, यह प्रक्रिया एक प्रोसेसर चक्र की तुलना में बहुत अधिक समय लेती है (जिसके लिए प्रतीक्षा करने के लिए आमतौर पर केवल कुछ ट्रांजिस्टर होते हैं)। यह एक बस चक्र की तुलना में बहुत अधिक समय लेता है (जो आमतौर पर प्रोसेसर चक्र की तुलना में कुछ गुना धीमा होता है)। एक विशिष्ट मेमोरी चिप पर कैस कमांड 5ns (IIRC के ऑर्डर पर लेने की संभावना है - यह कुछ समय हो गया है जब मैंने टाइमिंग को देखा), जो कि एक, प्रोसेसर चक्र की तुलना में परिमाण के क्रम से अधिक है।
सौभाग्य से, हम तीन भागों (स्तंभ, पंक्ति और बैंक) में पते तोड़ते हैं जो प्रत्येक भाग को छोटा बनाते हैं और उन भागों को समवर्ती रूप से संसाधित करते हैं, अन्यथा विलंबता और भी लंबी होगी।
प्रोसेसर कैश, हालांकि, यह समस्या नहीं है। न केवल यह बहुत छोटा है, इसलिए एड्रेस ट्रांसलेशन एक आसान काम है, यह वास्तव में एड्रेस के एक छोटे से टुकड़े (कुछ वेरिएंट में, इसमें से कोई भी नहीं) से अधिक अनुवाद करने की आवश्यकता नहीं है क्योंकि यह साहचर्य है। इसका मतलब है कि मेमोरी की प्रत्येक कैश्ड लाइन के साथ, अतिरिक्त मेमोरी सेल होती हैं जो पते का हिस्सा (या सभी) स्टोर करती हैं। जाहिर है कि यह कैश को और अधिक महंगा बनाता है, लेकिन इसका मतलब है कि सभी कोशिकाओं को यह देखने के लिए क्वियर किया जा सकता है कि क्या उनके पास विशेष मेमोरी की रेखा है जो हम एक साथ चाहते हैं, और फिर एकमात्र (उम्मीद है) जिसके पास सही डेटा है, उसे डंप कर देगा एक बस पर जो मुख्य प्रोसेसर कोर को पूरी मेमोरी को जोड़ता है। यह एक चक्र से कम में होता है, क्योंकि यह बहुत सरल है।
जिन अध्ययनों का मैंने अध्ययन किया, उनमें से एक अधिकतम-थ्रूपुट-इन-न्यूनतम-हार्डवेयर आंदोलन था जब हम किसी भी कैश आधारित मेमोरी के बारे में बात करते हैं, तो यह सीपीयू कैश, बफर कैश या मेमोरी कैश हो। बुनियादी मकसद तब हासिल किया जाता है जब डेटा को प्राप्त / पढ़ने / लिखने के लिए कम से कम या कोई हार्डवेयर आंदोलन नहीं होता है और ऑपरेशन तेजी से पूरा होता है।
डेटा डिस्क से स्थानांतरित होता है -> मुख्य मेमोरी (रैम) (अस्थायी भंडारण) -> सीपीयू कैश (अक्सर एक्सेस किए गए डेटा के लिए सीपीयू के पास छोटा अस्थायी भंडारण) -> सीपीयू (प्रसंस्करण)।
CPU कैश एक छोटा, तेज़ मेमोरी स्पेस है जो हाल ही में उपयोग किए गए मुख्य मेमोरी स्थानों से डेटा की प्रतियां संग्रहीत करता है।
बफ़र कैश एक मुख्य मेमोरी क्षेत्र है जो हाल ही में उपयोग किए गए डिस्क स्थानों से डेटा की प्रतियां संग्रहीत करता है।
ब्राउज़र कैश निर्देशिका या समान स्थान है जो उपयोगकर्ताओं द्वारा हाल ही में देखी गई वेबसाइटों से डेटा की प्रतियां संग्रहीत करता है।
संदर्भ: कंप्यूटर मेमोरी कैसे काम करती है