मैं प्रयोगशाला में काम करते हैं और बहु-क्रम कम्प्यूटेशनल कार्यक्रम में लिखा था, सी ++ 11 std::thread
के प्रयोग पर। अब मेरे पास बहु-सीपीयू सर्वर पर अपना प्रोग्राम चलाने का अवसर है।सी ++ में बहु-सीपीयू का लाभ कैसे लें?
सर्वर:
- चलाता उबंटू सर्वर
- 40 इंटेल CPU के
मैं बहु cpu प्रोग्रामिंग के बारे में कुछ भी नहीं पता है। पहला विचार, जो मेरे दिमाग में 40 अनुप्रयोग चलाने के लिए आता है और उसके बाद अपने परिणामों को एक साथ चिपकाता है। यह संभव है, लेकिन मैं अपने अवसरों के बारे में और जानना चाहता हूं।
- यदि मैं अपने जीसीसी कंपाइलर द्वारा सर्वर पर अपना कोड संकलित करता हूं, तो परिणामस्वरूप एप्लिकेशन बहु-सीपीयू का लाभ उठाता है?
- # 1 जवाब निर्भर करता है, मैं इसे कैसे देख सकते हैं?
धन्यवाद!
अपने कार्यक्रम से अधिक थ्रेड है पहले से ही तो ओएस स्वचालित रूप से अलग CPUs पर उन धागे निर्धारित करेगा। आप धागे की संख्या से सीमित रहेंगे। यदि आप 10 धागे बनाते हैं तो आपका प्रोग्राम अधिकतम 10 सीपीयू तक ही सीमित होगा। –
यदि प्रत्येक "परिणाम" सभी अन्य लोगों से पूरी तरह से स्वतंत्र है, तो मैं वास्तव में एक एकल थ्रेड एप्लिकेशन लिखूंगा, और उसके बाद इसे 'समानांतर' के माध्यम से निष्पादित करूँगा (देखें 'सुडो एपीटी-समानांतर स्थापित करें; मैन समांतर') – v010dya
ऑफ़-साइट के लिए पूछना एसओ पर संसाधन ऑफ-विषय है। मैंने पुस्तकालयों और अन्य संसाधनों के बारे में आपके सबक्वेस्टियन को हटा दिया है, क्योंकि शेष प्रश्न बचाया जा सकता है। – Puppy