एमओएसआई प्रोटोकॉल

From alpha
Revision as of 12:50, 9 April 2024 by Indicwiki (talk | contribs) (Created page with "{{Short description|Cache coherence protocol, includes an Owned state as an extension of the MSI protocol.}} MOSI प्रोटोकॉल मूल MSI प्रोटो...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Jump to navigation Jump to search

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

राज्यों का अवलोकन

किसी दी गई कैश लाइन की अनुमत स्थितियाँ निम्नलिखित हैं:

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

स्वामित्व (O) - एकाधिक कैश में किसी ब्लॉक का नवीनतम और सही मान हो सकता है और मुख्य मेमोरी में मान सही हो भी सकता है और नहीं भी। एक समय में, एक ब्लॉक के लिए केवल एक कैश के पास स्वामित्व वाली स्थिति हो सकती है। समान ब्लॉक वाले अन्य सभी कैश साझा स्थिति में होने चाहिए।[1] साझा (एस) - कैश ब्लॉक वैध है, कई कैश द्वारा साझा किया जा सकता है, और मुख्य मेमोरी के समान मूल्य हो भी सकता है और नहीं भी। अन्य प्रोसेसर इससे पढ़ सकते हैं, लेकिन उनके पास लिखने की अनुमति नहीं है।

अमान्य (I) - कैश ब्लॉक अमान्य है.

कैश की किसी भी जोड़ी के लिए, दी गई कैश लाइन की अनुमत स्थितियाँ इस प्रकार हैं:

 M   O   S   I 
 M  Red XN Red XN Red XN Green tickY
 O  Red XN Red XN Green tickY Green tickY
 S  Red XN Green tickY Green tickY Green tickY
 I  Green tickY Green tickY Green tickY Green tickY


संचालन

MOSI प्रोटोकॉल के लिए प्रोसेसर लेनदेन दिखाने वाली एक परिमित राज्य मशीन।

MOSI प्रोटोकॉल में, प्रत्येक कैश में निम्नलिखित अनुरोध होते हैं:

  • पीआरआरडी - प्रोसेसर कैश ब्लॉक को पढ़ने का अनुरोध करता है।
  • PrWr - प्रोसेसर कैश ब्लॉक में लिखने का अनुरोध करता है।
  • BusRd - बस की जासूसी यह दर्शाता है कि किसी अन्य प्रोसेसर द्वारा कैश ब्लॉक के लिए रीड रिक्वेस्ट की गई है।
  • BusRdX - स्नूप्ड अनुरोध यह दर्शाता है कि किसी अन्य प्रोसेसर द्वारा कैश ब्लॉक के लिए एक लेखन अनुरोध किया गया है जिसमें ब्लॉक नहीं है।
  • BusUpgr - स्नूप्ड अनुरोध यह दर्शाता है कि किसी अन्य प्रोसेसर द्वारा कैश ब्लॉक के लिए एक लेखन अनुरोध किया गया है जिसके कैश में पहले से ही ब्लॉक है।
  • फ्लश - स्नूप्ड अनुरोध जिसके बाद कैश से कैश ट्रांसफर के लिए कैश ब्लॉक को बस में रखा जाता है।[2]


प्रोसेसर लेनदेन

प्रोसेसर लेनदेन के मामले को देखते हुए, जब ब्लॉक अमान्य (I) स्थिति में होता है, तो या तो कैश ब्लॉक को मेमोरी से कभी नहीं लाया गया था या इसे अमान्य कर दिया गया था। जब कोई प्रोसेसर रीड (PrRd) होता है, तो स्थिति अमान्य (I) से साझा (S) में बदल जाती है, जिससे बस रीड (BusRd) उत्पन्न होता है। उसी समय, यदि यह एक प्रोसेसर राइट रिक्वेस्ट (PrWr) है, तो ब्लॉक की स्थिति स्नूप्ड राइट रिक्वेस्ट (BusRdX) के साथ संशोधित (M) में बदल जाती है।

एक बार जब ब्लॉक स्वामित्व (ओ) स्थिति में होता है, तो प्रोसेसर रीड (पीआरआरडी) कोई स्नूप्ड सिग्नल उत्पन्न नहीं करता है और ब्लॉक उसी स्थिति में रहता है। जबकि, प्रोसेसर (PrWr) से एक लेखन अनुरोध के परिणामस्वरूप ब्लॉक की स्थिति को स्वामित्व (O) से संशोधित (M) में बदलने के साथ-साथ एक स्नूप्ड लेखन अनुरोध (BusUpgr) उत्पन्न होता है।[3] जब ब्लॉक संशोधित (एम) स्थिति में होता है, तो न तो प्रोसेसर रीड (पीआरआरडी) और न ही प्रोसेसर राइट (पीआरडब्ल्यूआर) अनुरोध स्नूप्ड सिग्नल उत्पन्न करता है क्योंकि ब्लॉक पहले से ही इंगित करता है कि सबसे हालिया और सही मान केवल उस कैश में रहता है। इसलिए, यह स्थिति नहीं बदलता है और संशोधित (एम) स्थिति में रहता है।

एमओएसआई प्रोटोकॉल के लिए स्नूप्ड बस लेनदेन दिखाने वाली एक सीमित राज्य मशीन।

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

बस लेनदेन

स्नूप्ड बस लेनदेन के लिए परिमित राज्य मशीन के व्यवहार को ध्यान में रखते हुए, यदि कैश ब्लॉक अमान्य (आई) स्थिति में है तो कोई भी स्नूप्ड बस अनुरोध किसी भी तरह से ब्लॉक को प्रभावित नहीं करेगा, भले ही वह बस रीड (बसआरडी) या बस हो ऐसे प्रोसेसर से अनुरोध लिखें जिसमें ब्लॉक (BusRdX या BusUpgr) हो या न हो, ब्लॉक उसी अमान्य (I) स्थिति में रहता है और आगे कोई कार्रवाई उत्पन्न नहीं करता है।

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

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

जबकि कैश ब्लॉक संशोधित स्थिति में है, किसी अन्य प्रोसेसर से BusUpgr अनुरोध की कोई संभावना नहीं है क्योंकि उनमें से किसी के पास ब्लॉक नहीं होगा। संशोधित (एम) स्थिति की परिभाषा के अनुसार, केवल उस प्रोसेसर के पास ब्लॉक है, बाकी सभी अमान्य हैं और इसलिए BusUpgr अनुरोध शुरू नहीं कर सकते हैं।

जबकि मालिक (ओ) स्थिति में और एक स्नूप्ड रीड रिक्वेस्ट (बसआरडी) है, तो अन्य प्रोसेसर से पढ़ने के लिए डेटा को फ्लश (फ्लश) करते समय ब्लॉक उसी स्थिति में रहता है। स्नूप्ड राइट रिक्वेस्ट (BusRdX) के साथ, ब्लॉक डेटा को फ्लश (फ्लश) करने के साथ-साथ स्थिति को अमान्य (I) में बदल देता है क्योंकि कोई अन्य प्रोसेसर इसे लिख रहा है, जिससे उस ब्लॉक पर उसका स्वामित्व खो जाता है। जब भी कोई अन्य प्रोसेसर उस ब्लॉक तक पहुंचने का प्रयास करता है, तो उस तक पहुंचने के लिए मेमोरी में जाने के बजाय, प्रोसेसर उसे अन्य कैश से लेता है, जिसके पास पहले से ही स्वामित्व वाली (ओ) स्थिति में वह ब्लॉक होता है। BusUpgr के साथ, यह बस स्थिति को स्वामी (O) से अमान्य (I) में बदल देता है।[3]


एमएसआई प्रोटोकॉल से तुलना

एमएसआई प्रोटोकॉल और एमओएसआई प्रोटोकॉल के बीच स्पष्ट अंतर, जिसे बर्कले प्रोटोकॉल के रूप में भी जाना जाता है[4] केवल एक संशोधित (एम) स्थिति के अलावा एमओएसआई में एक अतिरिक्त स्थिति (स्वामित्व वाली) की उपस्थिति है।

एमएसआई प्रोटोकॉल में, जब भी ब्लॉक करने के लिए रीड मिस रिक्वेस्ट आती है जो संशोधित (एम) स्थिति में है, तो यह ब्लॉक की स्थिति को साझा (एस) में बदलते हुए मुख्य मेमोरी में वापस लिख देता है। लेकिन MOSI प्रोटोकॉल के मामले में, जहां हमारे पास एक अतिरिक्त स्थिति (मालिक) है, जब भी कोई अन्य प्रोसेसर रीड ऑपरेशन के लिए अनुरोध करता है, तो ब्लॉक संशोधित से स्वामित्व वाली (O) स्थिति में बदल जाता है और इसलिए कैश के गंदे ब्लॉक को बरकरार रखता है, जिससे हटा दिया जाता है मुख्य मेमोरी में तुरंत वापस लिखने की आवश्यकता।

यह स्थगन बस यातायात को बचा सकता है और मुख्य मेमोरी लेन-देन के कुछ अनुक्रमों में लिखती है। उदाहरण के लिए विचार करें कि यदि प्रोसेसर 1 के लिए कैश M है, तो प्रोसेसर 2 इसे पढ़ता है, और फिर प्रोसेसर 1 इसे फिर से लिखता है। एमएसआई में, रीड से प्रोसेसर 1 का एमएस ट्रांज़िशन एक मेमोरी राइट की ओर ले जाता है, और फिर एसएम ट्रांज़िशन एक BusUpgr की ओर ले जाता है। MOSI पर, MO ट्रांज़िशन कोई ट्रैफ़िक उत्पन्न नहीं करता है, और OM ट्रांज़िशन पहले की तरह एक BusUpgr भी उत्पन्न करता है। इसलिए MOSI ने आरंभिक मेमोरी राइट बैक और संबंधित बस ट्रैफ़िक को वितरित किया जो MSI करेगा।

महीने का प्रोटोकॉल से तुलना

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

संदर्भ

  1. Sorin, Daniel; Hill, Mark; Wood, David (2011). मेमोरी संगति और कैश सुसंगतता पर एक प्राइमर. Morgan & Claypool. pp. 119–122. ISBN 9781608455645.
  2. Solihin, Yan (2016). समानांतर मल्टी कोर आर्किटेक्चर के मूल सिद्धांत. RC Press, Taylor & Francis Group. ISBN 9781482211184.
  3. 3.0 3.1 "An Evaluation of Snoop-Based Cache Coherence Protocols" (PDF).
  4. 4.0 4.1 Yang, Q.; Bhuyan, L.N.; Liu, B.-C. (1989). "पैकेट-स्विच्ड मल्टीप्रोसेसर के लिए कैश कोहेरेंस प्रोटोकॉल का विश्लेषण और तुलना". IEEE Transactions on Computers. 38 (8): 1143–1153. doi:10.1109/12.30868.


यह भी देखें


श्रेणी:कैश सुसंगतता