कहें कि कोर ए एक चर एक्स को संशोधित कर रहा है और कोर बी उस चर (एक्स) को पढ़ रहा है। इस मामले में एक कैश समेकन प्रोटोकॉल कोर बी के कैश को अपडेट करेगा, क्योंकि एक्स को कोर ए द्वारा संशोधित किया गया है और इस कैश समेकन कोर बी पर निष्पादन को धीमा कर देगा। हालांकि, क्या यह कैश समेकन कोर ए के प्रदर्शन को भी प्रभावित करेगा, यह मानते हुए कि चर एक्स अपने कैश में रहता है।कैश समेकन इस मामले में प्रदर्शन को प्रभावित करता है
उत्तर
हां। कई तरीकों से यह प्रदर्शन को प्रभावित कर सकता है। मानक प्रोटोकॉल जो लोग उपयोग करते हैं, वे ओएसआई (संशोधित, साझा, अमान्य) के कुछ प्रकार हैं कभी-कभी ओ (मालिक) और अक्सर ई (एक्सक्लूसिव) प्रोटोकॉल में जोड़े जाते हैं। आपके उदाहरण में, कोर ए संशोधित (या विशिष्ट) स्थिति में शुरू होगा, और कोर बी के पढ़ने से कोर ए को साझा स्थिति में बदलने के लिए मजबूर किया जाएगा। यह क्रिया कैश में चक्र लेती है क्योंकि कोर केवल इतना ही ऑपरेशन होता है कि कोर किसी भी समय पर प्रदर्शन कर सकता है। कोर ए पर इसका प्रभाव बहुत अधिक नहीं है हालांकि यह महत्वपूर्ण पथ में नहीं है। बड़ा प्रभाव यह है कि कोर ए फिर से लिखता है। चूंकि कैश लाइन साझा (या अमान्य) स्थिति में है, इसलिए इसे स्वयं को एम या ई में अपग्रेड करने का अनुरोध जारी करना होगा। वह अनुरोध कोर बी पर जाना होगा। यह ऑपरेशन महत्वपूर्ण पथ पर है और लिखना तब तक समाप्त नहीं हो सकता है कैश ब्लॉक अपग्रेड किया गया है। उस ने कहा, लिखते हैं आमतौर पर buffered और प्रोसेसर आम तौर पर इस ऑपरेशन पर अवरुद्ध नहीं किया जाएगा।
हां, वर्तमान में माइक्रो (एम) एसआई समेकन प्रोटोकॉल का उपयोग करते हुए सूक्ष्मजीवों पर, यह X
पर ए के अपडेट को धीमा कर देगा। इसका कारण यह है कि बी के पढ़ने से X
युक्त कैश लाइन को 'साझा' स्थिति में कॉपी करने से पहले रखा जाएगा, और फिर ए के लिखने से पहले इसे संशोधित करने से पहले 'अनन्य' स्थिति में प्रवेश करने के लिए बी की प्रति को अमान्य करना होगा।
सभी ने कहा, एपर लिखता है वास्तव में ए की निष्पादन पाइपलाइन को रोक नहीं सकता है। यह आर्किटेक्चर और प्रोग्रामिंग भाषा के मेमोरी स्थिरता मॉडल पर निर्भर करता है, और क्या लेखन को परमाणु संचालन या बाद में लिखने वाली बाड़ के रूप में मजबूर किया जाता है।
- 1. कैश समेकन
- 2. ऑब्जेक्ट.ब्सर्व() प्रदर्शन को कैसे प्रभावित करता है?
- 3. फेविकॉन 404 प्रदर्शन को प्रभावित करता है
- 4. क्या obfuscation प्रदर्शन को प्रभावित करता है?
- 5. डीएमए कैश समेकन प्रबंधन
- 6. विधि कॉल जावा में प्रदर्शन को कैसे प्रभावित करता है?
- 7. क्या अर्धविराम छोड़ना जावास्क्रिप्ट में प्रदर्शन को प्रभावित करता है?
- 8. पेज कैश PHP में जो समेकन को संभालता है?
- 9. क्या .NET असेंबली आकार प्रदर्शन को प्रभावित करता है?
- 10. NUMA आर्किटेक्चर ActivePivot के प्रदर्शन को कैसे प्रभावित करता है?
- 11. एक बड़ा लेनदेन लॉग प्रदर्शन को कैसे प्रभावित करता है?
- 12. क्या तालिका का आकार INSERT प्रदर्शन को प्रभावित करता है?
- 13. os.path.join() इस मामले में क्यों काम नहीं करता है?
- 14. प्रदर्शन के मामले में बेहतर क्या है?
- 15. सख्त बनाम नॉनस्ट्रिट एनएचबेर्नेट कैश समेकन रणनीतियों
- 16. इस मामले में "&" का क्या अर्थ है?
- 17. क्या LOH में किसी ऑब्जेक्ट को पिन करना जीसी प्रदर्शन को प्रभावित करता है?
- 18. सक्रियरण रेलवे को प्रभावित करता है ')() की क्षमताओं को कैसे प्रभावित करता है?
- 19. PHP पीडीओ: प्रदर्शन को फिर से तैयार करने के तरीके को कैसे प्रभावित करता है
- 20. क्या `locals() 'में पहुंच योग्य` .0` चर या स्मृति या प्रदर्शन को प्रभावित करता है?
- 21. इस मामले में कनेक्टटाइमआउट को अनदेखा क्यों किया गया है?
- 22. मैट्रिक्स में लूप का क्रम एल्गोरिदम गुणा प्रदर्शन को क्यों प्रभावित करता है?
- 23. क्या WHERE खंड में स्थितियों का क्रम MySQL प्रदर्शन को प्रभावित करता है?
- 24. रेखा-ऊंचाई छवियों को प्रभावित करता है?
- 25. क्या बहुत सारे बंडल लोड करना सिम्फनी 2 एप्लिकेशन के समग्र प्रदर्शन को प्रभावित करता है?
- 26. सी ++ कंटेनर के प्रदर्शन में परिवर्तनीय कीवर्ड को कैसे प्रभावित करता है?
- 27. प्रदर्शन जब सीपीयू कैश उत्पन्न करता है मिस
- 28. कैशिंग मेमोरी खपत को कैसे प्रभावित करता है?
- 29. इस मामले में पैडिंग क्यों नहीं हो रही है?
- 30. tsql में समेकन के मामले में एक चयन कथन सुरक्षित के साथ एक सम्मिलित है?
मेरे मामले में कोर ए अक्सर लिख रहा है, और कोर बी कभी-कभी पढ़ता है, इसलिए मुझे लगता है कि यह प्रदर्शन को थोड़ा सा नुकसान पहुंचाएगा। सही? – pythonic
यदि अधिकांश कोर जो कर रहा है वह लिख रहा है और अधिकांश कोर बी क्या कर रहा है पढ़ रहा है, तो हाँ, आप समस्याओं में भाग ले सकते हैं। इसे आम तौर पर पिंग-पोंगिंग कहा जाता है। आप किस तरह का संचार करने की कोशिश कर रहे हैं? इस सामान पर बहुत से कागजात हैं। उदाहरण के लिए, यदि आप कोर ए पर कुछ उत्पादित कर रहे हैं और इसे मूल बी पर उपभोग करना चाहते हैं, तो आपको एक कैशबल, लॉकलेस कतार डेटास्ट्रक्चर का उपयोग करना चाहिए जो जितना संभव हो उतना पिंग-पोंगिंग से बचाता है। (इसमें छाया सिर और छाया पूंछ जैसी अवधारणाएं होनी चाहिए।) –
नाथन, इस तरह की एक सूचनात्मक टिप्पणी के लिए धन्यवाद। मैं इस पिंग-पोंगिंग में अधिक विस्तार से सोचूंगा। – pythonic