मैंने शानदार परिणामों के साथ चीजों को गति देने के लिए एक मैक्स-फ़ंक्शन के रूप में सी ++ में एक मैटलैब प्रोग्राम को फिर से लिखा है। यह ऑप्टिमाइज़ेशन निर्णय बहुत ही अच्छा विचार था, बिना किसी थ्रेडिंग के 20 कारक तक। यह अभी भी मुझे उत्सुकता है कि मैक्स-फ़ंक्शन क्या समय व्यतीत कर रहा था और संभावित बाधाओं की पहचान करना चाहता था।एक मैक्स-फ़ंक्शन प्रोफाइलिंग
मै मैक्स-फ़ंक्शन प्रोफाइल करने का एक तरीका ढूंढ रहा हूं। Matlab प्रोफाइलर का अधिक उपयोग नहीं है, और अन्य प्रोफाइलर्स जिन्हें मैंने डाउनलोड किया है (दोनों स्वतंत्र और परीक्षण) सभी निष्पादन योग्य चलाने के लिए चाहते हैं। मैं कोई मैक्स गुरु नहीं हूं, लेकिन जहां तक मुझे पता चला है कि मैक्स चलाने का एकमात्र तरीका मैटलैब के भीतर से है। मैक्स-फ़ंक्शन को एक डीएल में संकलित किया गया है, लेकिन इसे .mex64 कहा जाता है। तो यह समस्या एक डीएल प्रोफाइलिंग के समान होना चाहिए। सी ++ मैक्स-फ़ंक्शन लिखने के लिए मैंने एक एकल उपयोगकर्ता VS2005 (यानी, टीम संस्करण नहीं) का उपयोग किया, और x64-platform पर चल रहा हूं।
क्या किसी को भी मैक्स-फ़ंक्शन प्रोफ़ाइल करने का एक अच्छा तरीका पता है? मैटलैब के भीतर से शुरू होने पर मुझे किस टूल का उपयोग करना चाहिए और मैं इसका उपयोग कैसे करूं? या सी ++ - कोड प्रोफाइल करने का कोई अन्य तरीका है?
टिप के लिए धन्यवाद। यह एक अच्छा दृष्टिकोण है। मेरी एकमात्र समस्या यह है कि मैक्सफंक्शन में इनपुट बड़े matlab structs का एक बड़ा समूह है। रैपर में इन सभी चीजों को चलाने में सक्षम होने के लिए मुझे कोड लिखने की ज़रूरत है, जो मुझे इस पर जाने और किसी भी विचार के बिना इसे रोकने से रोकता है। – AnnaR
का पालन नहीं करते हैं। क्या आप अपने सभी structs matlab के अंदर नहीं बना सकते हैं और उन्हें एक .mat फ़ाइल में सहेज सकते हैं? (यानी जो कुछ भी पहले आपके मैक्स फ़ंक्शन में इनपुट तर्क था, अब एक .mat फ़ाइल में सहेजता है और डिस्क से नए रैपर द्वारा पढ़ा जाता है। – second
अपने मैक्स फ़ाइलों को सीधे valgrind का उपयोग करना संभव है। [this] (http : //stackoverflow.com/questions/11220250/how-do-i-profile-a-mex-function-in-matlab/12405131#12405131) उत्तर। – angainor