2015-07-31 6 views
6

मैं पाइथन के डीएएपी पॅककेज का उपयोग कर रहा हूं और मैं अपने कोड को बहु-कोर करना चाहता हूं और मैंने मल्टीप्रोसेसिंग का उपयोग करके इसे सफलतापूर्वक करने के लिए http://deap.gel.ulaval.ca/doc/dev/tutorials/distribution.html पर ट्यूटोरियल का उपयोग किया।पायथन डेप जेनेटिक एल्गोरिदम बहु-कोर गति

मेरा प्रश्न निम्न है: 8 कोर का उपयोग करके, सिद्धांत में मुझे कितनी गति मिलती है? कारण मैं पूछता हूं क्योंकि मैं यह तय करना चाहता हूं कि कितने व्यक्तियों और पीढ़ियों को मैं सिंगल-कॉर्ड संस्करण के समान समय में चला सकता हूं। मेरा कोड चलाने के लिए ~ 200s लेने के लिए और 8 कोर के साथ प्रयोग किया जाता था, अब यह ~ 0.5 सेकंड लेता है (यह एक 400 एक्स स्पीडअप है)। क्या मैं मान सकता हूं कि 400X तक कुछ भी बढ़ जाएगा? मुझे पता है कि यह जटिल है, लेकिन आपकी मदद की बहुत सराहना की जाएगी।

सामान्य रूप से, यदि कोई मदद कर सकता है, तो मैं समझना चाहता था कि गणना के प्रवाह में कितना मल्टीकोरिंग बदलता है। क्या यह प्रत्येक पीढ़ी के लिए अलग-अलग कोरों पर प्रत्येक व्यक्ति के मूल्यांकन का मानचित्रण करता है? या क्या यह समानांतर में पीढ़ियों को चलाता है? यदि आप किसी दस्तावेज़ के बारे में जानते हैं तो मैं इसके बारे में पढ़ सकता हूं, कृपया मुझे बताएं।

मैंने कोड उदाहरण प्रदान नहीं किया क्योंकि यह आवश्यक नहीं है क्योंकि यह एक बहुत ही उच्च स्तरीय प्रश्न है।

उत्तर

3

क्या यह प्रत्येक पीढ़ी के लिए अलग-अलग कोरों पर प्रत्येक व्यक्ति के मूल्यांकन को मानचित्र करता है, या क्या यह पीढ़ियों को समानांतर में चलाता है?

उदाहरण नक्शे evaluate आपरेशन इस प्रकार ...

fitnesses = toolbox.map(toolbox.evaluate, invalid_ind) 

अकेला चल प्रक्रिया नक्शा हिट: सभी invalid_ind की एक भी कतार में मार्शल और, कर रहे हैं के रूप में एक कोर उपलब्ध आता है, कतार में अगला व्यक्ति उस कोर को evaluate दिनचर्या चलाने के लिए असाइन किया गया है। जब कतार खाली होती है तो सभी परिणाम एक सूची में इकट्ठे होते हैं और fitnesses पर वापस सौंपा जाता है। तब से यह प्रक्रिया अकेले रहती है।

तो:

  • "हाँ" यह अलग कोर से अधिक प्रत्येक व्यक्ति के मूल्यांकन और,
  • "नहीं" यह पीढ़ी दर पीढ़ी समानांतर

कम से कम है कि में नहीं चलता है नक्शा करता है I asked this question से मैं क्या अनुमान लगाता हूं। पाठ्यक्रम के आपके आवेदन के आधार पर, डीएएपी और सीप्रोफाइल के साथ अपने अनुभव में, सीपीयू समय के शीर्ष दो उपभोक्ता व्यक्तियों का मूल्यांकन कर रहे थे और प्रतिलिपि बना रहे थे।

संबंधित मुद्दे