अन्तर्निहित स्मृति

From alpha
Jump to navigation Jump to search

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

यह मल्टी-चैनल मेमोरी आर्किटेक्चर से अलग है, मुख्य रूप से इंटरलीव्ड मेमोरी मुख्य मेमोरी और मेमोरी नियंत्रक के बीच अधिक चैनल नहीं जोड़ती है। हालाँकि, चैनल इंटरलीविंग भी संभव है, उदाहरण के लिए फ्रीस्केल i.MX6 प्रोसेसर में, जो दो चैनलों के बीच इंटरलीविंग करने की अनुमति देता है।[citation needed]

सिंहावलोकन

इंटरलीव्ड मेमोरी के साथ, मेमोरी एड्रेस को प्रत्येक मेमोरी बैंक को बारी-बारी से आवंटित किया जाता है। उदाहरण के लिए, दो मेमोरी बैंकों (शब्द-संबोधनयोग्य मेमोरी मानते हुए) के साथ एक इंटरलीव्ड सिस्टम में, यदि तार्किक पता 32 बैंक 0 से संबंधित है, तो तार्किक पता 33 बैंक 1 से संबंधित होगा, तार्किक पता 34 बैंक 0 से संबंधित होगा, और इसी तरह। . एक इंटरलीव्ड मेमोरी को एन-वे इंटरलीव्ड कहा जाता है जब वहाँ होते हैं n बैंक और मेमोरी स्थान i बैंक में रहता है i mod n.

4 बैंकों के साथ मेमोरी इंटरलीविंग उदाहरण। लाल बैंक ताज़ा हैं और इनका उपयोग नहीं किया जा सकता।

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

इंटरलीव्ड DRAM

मुख्य मेमोरी (रैंडम एक्सेस मेमोरी , रैम) आमतौर पर DRAM मेमोरी चिप्स के संग्रह से बनी होती है, जहां मेमोरी बैंक बनाने के लिए कई चिप्स को एक साथ समूहीकृत किया जा सकता है। तब यह संभव है, एक मेमोरी कंट्रोलर के साथ जो इंटरलीविंग का समर्थन करता है, इन मेमोरी बैंकों को बिछाना ताकि मेमोरी बैंक इंटरलीव हो जाएं।

DRAM में डेटा पेजों की इकाइयों में संग्रहीत होता है। प्रत्येक DRAM बैंक में एक पंक्ति बफ़र होता है जो बैंक में किसी भी पृष्ठ तक पहुँचने के लिए कैश के रूप में कार्य करता है। DRAM बैंक में किसी पृष्ठ को पढ़ने से पहले, इसे पहले डायनामिक रैंडम-एक्सेस मेमोरी|रो-बफर में लोड किया जाता है। यदि पृष्ठ को पंक्ति-बफर (या पंक्ति-बफर हिट) से तुरंत पढ़ा जाता है, तो इसमें एक मेमोरी चक्र में सबसे कम मेमोरी एक्सेस विलंबता होती है। यदि यह एक पंक्ति बफ़र मिस है, जिसे पंक्ति-बफ़र संघर्ष भी कहा जाता है, तो यह धीमा है क्योंकि नए पृष्ठ को पढ़ने से पहले पंक्ति-बफ़र में लोड करना पड़ता है। रो-बफर मिस हो जाता है क्योंकि एक ही बैंक में विभिन्न मेमोरी पेजों पर एक्सेस अनुरोधों की सेवा की जाती है। पंक्ति-बफ़र विरोध के कारण मेमोरी एक्सेस में काफी देरी होती है। इसके विपरीत, विभिन्न बैंकों तक मेमोरी पहुंच उच्च थ्रूपुट के समानांतर आगे बढ़ सकती है।

प्रभावी समाधान के साथ पंक्ति-बफ़र संघर्ष के मुद्दे का अच्छी तरह से अध्ययन किया गया है।[1] पंक्ति-बफ़र का आकार सामान्यतः ऑपरेटिंग सिस्टम द्वारा प्रबंधित मेमोरी पेज के आकार का होता है। पंक्ति-बफ़र विरोध या चूक एक ही मेमोरी बैंक में विभिन्न पृष्ठों तक पहुंच के अनुक्रम से आते हैं। द स्टडी[1]दिखाता है कि एक पारंपरिक मेमोरी इंटरलीविंग विधि कैश स्तर पर एड्रेस-मैपिंग संघर्षों को मेमोरी एड्रेस स्पेस में प्रसारित करेगी, जिससे मेमोरी बैंक में रो-बफर मिस हो जाएगा। क्रमपरिवर्तन-आधारित इंटरलीव्ड मेमोरी विधि ने मामूली माइक्रोआर्किटेक्चर लागत के साथ समस्या को हल किया।[1]सन माइक्रोसिस्टम्स ने अपने उत्पादों में इस क्रमपरिवर्तन इंटरलीविंग विधि को शीघ्रता से अपनाया।[2] यह पेटेंट-मुक्त विधि एम्बेडेड सिस्टम, लैपटॉप, डेस्कटॉप और एंटरप्राइज़ सर्वर के लिए कई वाणिज्यिक माइक्रोप्रोसेसरों, जैसे एएमडी, इंटेल और एनवीआईडीआईए में पाई जा सकती है।[3] पारंपरिक (फ्लैट) लेआउट में, मेमोरी बैंकों को मेमोरी एड्रेस का एक सन्निहित ब्लॉक आवंटित किया जा सकता है, जो मेमोरी कंट्रोलर के लिए बहुत सरल है और इंटरलीविंग के माध्यम से प्राप्त प्रदर्शन स्तरों की तुलना में पूरी तरह से यादृच्छिक एक्सेस परिदृश्यों में समान प्रदर्शन देता है। हालाँकि, वास्तव में मेमोरी रीड संदर्भ की स्थानीयता के कारण शायद ही कभी यादृच्छिक होती है, और एक साथ पहुंच के लिए अनुकूलन इंटरलीव्ड लेआउट में कहीं बेहतर प्रदर्शन देता है।

जिस तरह से मेमोरी को संबोधित किया जाता है उसका उन मेमोरी स्थानों के एक्सेस समय पर कोई प्रभाव नहीं पड़ता है जो पहले से ही सीपीयू कैश हैं, इसका प्रभाव केवल उन मेमोरी स्थानों पर पड़ता है जिन्हें DRAM से पुनर्प्राप्त करने की आवश्यकता होती है।

इतिहास

इंटरलीव्ड मेमोरी पर प्रारंभिक शोध आईबीएम 7030 खिंचाव कंप्यूटर के संबंध में 60 और 70 के दशक में IBM में किया गया था,[4] लेकिन आधुनिक कार्यान्वयन के लिए डिज़ाइन, लचीलेपन और प्रदर्शन में सुधार करते हुए दशकों तक विकास जारी रहा।

यह भी देखें

संदर्भ

  1. 1.0 1.1 1.2 Zhao Zhang, Zhichun Zhu, and Xiaodong Zhang (2000). पंक्ति-बफर संघर्षों को कम करने और डेटा स्थानीयता का शोषण करने के लिए एक क्रमपरिवर्तन-आधारित पेज इंटरलीविंग योजना. MICRO' 33.{{cite conference}}: CS1 maint: multiple names: authors list (link)
  2. "विलियम और मैरी कॉलेज के प्रौद्योगिकी हस्तांतरण कार्यालय के निदेशक को सूर्य पत्र" (PDF). July 15, 2005.
  3. "Professor Xiaodong Zhang Receives 2020 ACM Microarchitecture Test of Time Award". Department of Computer Science and Engineering, College of Engineering, Ohio State University. January 19, 2021.
  4. Mark Smotherman (July 2010). "IBM Stretch (7030) — Aggressive Uniprocessor Parallelism". clemson.edu. Retrieved 2013-12-07.


बाहरी संबंध