2010-06-22 10 views
7

मैंने प्रोफाइलिंग सलाह देने में बहुत सी पोस्ट पढ़ी हैं लेकिन मुझे यह पूछने की ज़रूरत है।मुझे विज़ुअल सी ++ एक्सप्रेस कैसे प्रोफाइल करना चाहिए?

मैं जो कह सकता हूं उससे, विज़ुअल सी ++ एक्सप्रेस एक डिबगिंग फ़ाइल उत्पन्न नहीं करता है जिसका उपयोग प्रोफाइलर प्रोग्राम द्वारा किया जाता है। मैंने एएमडी कोडेनालिस्ट की कोशिश की और यह ठीक काम करने लग रहा था सिवाय इसके कि मेरे कार्यक्रम में किसी भी दिनचर्या की पहचान नहीं की गई - बस "अज्ञात मॉड्यूल" के बहुत सारे।

मैं सी ++ में नया हूं। मैं पाइथन द्वारा उपयोग किए जाने वाले सरल प्रोफाइलर के लिए उपयोग किया जाता हूं। सरल, मुझे लगता है, क्योंकि भाषा का अर्थ है।

मैं किसी भी अंतर्दृष्टि की सराहना करता हूं।

पीएस .: क्या स्टीयरिंग व्हील का घूर्णन कार के घूर्णन के व्युत्पन्न है?

+1

गंभीर विकास के लिए, आपको या तो माइक्रोसॉफ्ट टैक्स का भुगतान करना होगा या एक खुले मंच पर स्विच करना होगा। विजुअल स्टूडियो एक्सप्रेस आपको हुक करने के लिए सिर्फ एक नमूना है। पीएस के लिए: मुझे शक है; पहियों का कोण सड़क के साथ घर्षण को एक nonlinear तरीके से प्रभावित करेगा। –

+0

क्या आप एक ओपन सोर्स की तरह ही सिफारिश कर सकते हैं, या सी ++ के लिए विज़ुलल स्टूडियो के रूप में सक्षम हैं? –

+1

मैं एक आईडीईई का उपयोग करने के लिए एक लुडाइट का बहुत अधिक हूं, इसलिए मैं खुद को कुछ भी सिफारिश नहीं कर सकता; एक शैल का मेरा पसंदीदा वातावरण, जीएनयू टूल्स और एक मूल स्रोत संपादक हर किसी के स्वाद के लिए नहीं होगा। मैंने लोगों को एक्लिप्स और कोडब्लॉक्स के बारे में बात सुनी है, लेकिन मुझे नहीं पता कि वे कोई अच्छे हैं या वे विजुअल स्टूडियो के साथ तुलना कैसे करते हैं। –

उत्तर

7

पहले, कार की ध्रुवीय कोणीय वेग कार की गति और स्टीयरिंग व्हील की कोणीय स्थिति के लिए आनुपातिक होनी चाहिए (पहले अनुमान के लिए)।

दूसरा, शायद ही कोई प्रोफेसर या ब्लॉगर या पुस्तक लेखक है जो आपको यह बताएगा, लेकिन यदि आप देखना चाहते हैं कि कोड क्या कर रहा है और इसे अनुकूलित कर रहा है, the hands-down simplest way is this

जोड़ा गया: प्रोग्रामर के पास यह मानने की एक मजबूत प्रवृत्ति है कि कोई भी स्वचालित प्रोफाइलिंग उपकरण मैन्युअल तकनीक की तुलना में बेहतर काम करेगा, लेकिन यह वास्तव में उनके विवरणों के विवरण पर निर्भर करता है। उनमें से अधिकतर सबसे प्रभावी क्या है इसके बजाए लोकप्रिय है जो लागू करते हैं। परिणाम कुछ प्रदर्शन समस्याओं को याद किया जा रहा है, जो आप प्राप्त कर सकते हैं उस गति पर एक टोपी डाल। Here is a list of common misconceptions जिसके परिणामस्वरूप प्रदर्शन समस्याओं को ढूंढने में विफल रहा।

कुछ प्रोफाइलर यह लगभग RotateRight/Zoom और LTProf सहित ठीक है, मिलता है

+0

मुझे प्रोफेसरों, ब्लॉगर्स या लेखकों के बारे में पता नहीं है, लेकिन यह वास्तव में लिनक्स के लिए oprofile कैसे काम करता है। हालांकि नमूना स्वचालित रूप से किया जाता है, कई बार एक सेकंड। –

+0

@ माइक सेमुर: आप ऐसा सोच सकते हैं, लेकिन यह बहुत जटिल है, और डॉक्टर के बाद, यह यहां उल्लिखित कई मुद्दों से ग्रस्त प्रतीत होता है: http://stackoverflow.com/questions/1777556/alternatives-to-gprof/ 1779343 # 1779343 –

+1

@ माइक सेमुर: ... इसे 1 की आवश्यकता है) I/O के दौरान भी धागे के यादृच्छिक ढेर के नमूने प्राप्त करें, 2) उपयोगकर्ता इनपुट के दौरान नमूनों को अनदेखा करने में सक्षम हों या उपयोगकर्ता को गर्म-कुंजी द्वारा नमूनाकरण को बेहतर तरीके से करने दें, 3) उस पंक्ति वाले नमूने के प्रति पंक्ति (प्रति समारोह नहीं) रिपोर्ट (रिकर्सन को अनदेखा करना), 4) आदर्श रूप से उपयोगकर्ता को अलग-अलग स्टैक नमूने देखने दें। अंत में, नमूने को बड़ी संख्या में या उच्च आवृत्ति पर नहीं लिया जाना चाहिए। वास्तव में, ** lsstack ** उन्हें लेने का एक बिल्कुल उपयोगी तरीका है। –

0

क्या आप निश्चित हैं? आईआईआरसी, विजुअल स्टूडियो एक्सप्रेस पीडीबी फ़ाइल बना सकता है, हालांकि यदि आप रिलीज बिल्ड का उपयोग कर रहे हैं तो आपको इसके लिए डिबगिंग जानकारी जेनरेट करने के लिए कहना पड़ सकता है। (इसे करना है - अन्यथा विजुअल स्टूडियो का डीबगर काम नहीं करेगा!)

+0

ठीक है, वीएसई कुछ .pdb फ़ाइलों को बनाता है। मुझे कोडेनालिस्ट के साथ कुछ और गड़बड़ करनी होगी। विजुअल स्टूडियो का डीबगर वीएस एक्सप्रेस के साथ काम नहीं करता है। –

+0

@ पीटर स्टीवर्ट: एर .. हाँ, वीएस डिबगर वीएस एक्सप्रेस में काम करता है।आप ब्रेकपॉइंट सेट कर सकते हैं और प्रोग्राम चला सकते हैं और यह सही तरीके से काम करेगा। –

+0

मुझे माफ़ कर दो। हाँ आप सही हैं, मैं वीएस के प्रोफाइलर के बारे में सोच रहा था। –

0

अपना खुद का प्रोफाइलर लिखना मुश्किल नहीं है। या आप एक ओपन सोर्स चुन सकते हैं जिसके पीछे कुछ परीक्षण है। हो सकता है कि आप cRunWatch

+0

यह एक साफ प्रोफाइलर की तरह दिखता है, और मुझे अवांछित कार्यक्रम भी पसंद है। मैं इसे और देखेंगे। –

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