अगर मैं एक मल्टी-प्रोसेसर बोर्ड है कि cache-coherentnon-uniform memory access (NUMA), यानी अलग "northbridges" प्रत्येक प्रोसेसर के लिए अलग से रैम के साथ, किसी भी संकलक पता है स्वचालित रूप से इस तरह के स्थानीय सूत्र पर काम प्रक्रियाओं ज्यादातर पुन: प्राप्त करने कर रहे हैं कि विभिन्न स्मृति सिस्टम में डेटा का प्रसार करने के लिए कैसे है प्रोसेसर से जुड़े राम से उनका डेटा थ्रेड चल रहा है?क्या जीसीसी, आईसीसी, या माइक्रोसॉफ्ट के सी/सी ++ कंपाइलर समर्थन या NUMA के बारे में कुछ भी पता है?
मेरे पास एक सेटअप है जहां प्रोसेसर 0 से 1 जीबी जुड़ा हुआ है, 1 जीबी प्रोसेसर 1, एटी सी से जुड़ा हुआ है। 4 प्रोसेसर तक। coherent memory space में पहली प्रोसेसर पर रैम के लिए भौतिक स्मृति 0 से 1 जीबी -1 है। दूसरे प्रोसेसर के लिए यह 1 जीबी से 2 जीबी -1 है, और इसी तरह।
क्या कोई कंपाइलर, या शायद malloc
विशेष रूप से, उस कोर से जुड़े भौतिक RAM के लिए एक विशिष्ट कोर पर एक प्रक्रिया द्वारा आवंटित नई मेमोरी को जोड़ देगा?
ब्याज से, बोर्ड निर्माता कौन है? –
मैंने इस तरह का सवाल उठाया, लेकिन मेरी मूल समस्या को 1 मरने पर कई कोर और विभिन्न मेमोरी क्षेत्रों के लिए चिप के विभिन्न हिस्सों में कोर के लिए मेमोरी एक्सेस करने की लागत है। –