मैंने एक प्रोग्राम लिखा है जो एमपीआई का उपयोग करता है, यह समीकरणों की एक बहुत बड़ी प्रणाली को हल करता है। मुझे बहुत बड़े सिस्टम के लिए बहुत अच्छे "स्पीड-अप" मिल रहे हैं। इससे मेरा तात्पर्य यह है कि यदि मैं प्रक्रियाओं की संख्या बढ़ाता हूं तो समय को आधा होने के साथ-साथ एक निरंतर समय भी पूरा हो जाता है जिसे मैं संचार मानता हूं। उदाहरण के लिए, एक प्रक्रिया में 60 के दशक लग सकते हैं, फिर दो पर 35 (60 + 5) लग सकते हैं, फिर 4 पर 20.5 (17.5 + 3) लग सकते हैं।
हालाँकि, जब सिस्टम में प्रवेश होता है जो लगभग 1 मिलियन से 1 मिलियन होता है तो मुझे अजीब परिणाम मिलने लगते हैं। जब 4 कोर से 8 कोर तक जा रहा हूं तो मुझे आधा समय प्लस 10 सेकंड "संचार" मिलता है। यानी, गणना पूरा करने में लगने वाला समय ~ 260 से ~ 140 हो जाता है।
यह ठीक है, लेकिन फिर जब 8 से 16 तक का समय ~ 140 से ~ 110 हो जाता है, तो 16 से 32 तक जाने पर मुझे भी ऐसा ही खराब परिणाम मिलता है। यह है, ~ 110 से ~ 85।
मुझे लगता है कि यह प्रोसेसर के साथ कुछ करने के लिए हो सकता है, क्योंकि यह व्यवहार अचानक प्रकट नहीं होगा (?)
सिस्टम में इनमें से 2 प्रोसेसर हैं
https://ark.intel.com/products/120485/Intel-Xeon-Gold-6140-Processor-24_75M-Cache-2_30-GHz
इसमें लगभग 8000GB RAM भी है।
मैं कुछ स्पष्टीकरण चाहूंगा कि ऐसा क्यों हो रहा है।
मुझे और जानकारी प्रदान करने में खुशी हो रही है। मुझे पता है कि यह एक जटिल मुद्दा है और मुझे यकीन नहीं है कि आपको कुल में क्या जानकारी चाहिए