2009-07-17 8 views
8

मुझे रेडगेट के एंट्स प्रोफाइलर के बारे में पता है जो मैं सुनता हूं वह बहुत ही बढ़िया है लेकिन यह $ 400 भी है। वहां कोई सस्ता विकल्प है जो कम से कम मुझे इंगित करेगा कि मुझे अपना कोड अनुकूलित करने की आवश्यकता हो सकती है?सी # asp.net के लिए प्रोफाइलिंग/प्रदर्शन विश्लेषण के लिए मुफ्त या सस्ती विकल्प?

+0

आगे की चर्चा के लिए http://stackoverflow.com/questions/911932/where-can-i-find-a-profiler-for-c-applications-to-be-used-in-visual-studio-2008 देखें/विकल्प –

उत्तर

3

Dottrace चींटियों की आधा कीमत लगभग है, और यह वास्तव में अच्छा है। रेसर्पर करते हैं जो वही लोग बनाते हैं।

यदि आप बस अपने कोड का एक-ऑफ ऑप्टिमाइज़ेशन ढूंढ रहे हैं, तो आपको एंट्स के लिए जाना चाहिए, क्योंकि इसमें 15-दिन का नि: शुल्क परीक्षण है, जो बहुत से प्राप्त करने के लिए पर्याप्त होना चाहिए अनुकूलन किया।

+0

मैं डॉट्रेस का भी उपयोग करता हूं और निश्चित रूप से यह अनुशंसा करता हूं। –

2

वीएसआरओफ़ाइलर वीएस के साथ जहाजों और बहुत अच्छी तरह से काम करता है। यदि आप स्मृति से संबंधित मुद्दों को देख रहे हैं तो CLRProfiler आपका विकल्प होगा।

+1

अगर मैं गलत हूं तो मुझे सही करें, लेकिन मेरा मानना ​​है कि यह केवल विजुअल स्टूडियो के एक टीम संस्करण के साथ उपलब्ध है। – womp

+0

हां, आप सही हैं। हालांकि, सीएलआर प्रोफाइलर मुफ़्त है। – mfawzymkh

2

सामान्य रूप से, मैं जिस विधि का उपयोग करता हूं वह this है।

मुझे कोड के समय के टुकड़ों में इतनी दिलचस्पी नहीं है क्योंकि बड़े अनावश्यक समय लेने वालों को ढूंढने में मैं उन्हें साफ़ कर सकता हूं और गति को पूरा कर सकता हूं।

यह वास्तव में एक अलग प्रक्रिया है।

जोड़ा गया: यदि मैं विस्तृत कर सकता हूं, तो सामान्य प्रदर्शन समस्याओं को मैं देखता हूं कि कुछ गतिविधि (जो लगभग हमेशा एक फ़ंक्शन कॉल होती है) कुछ समय का उपभोग करती है, जैसे कि 10%, 50%, 9 0%, जो भी हो, और वास्तव में जरूरी नहीं है - इसे किसी और चीज़ के साथ प्रतिस्थापित किया जा सकता है या बिल्कुल नहीं किया जा सकता है, और उस समय की मात्रा बचाई जाएगी।

मान लीजिए कि यह 50% है।

मैं कॉल स्टैक के यादृच्छिक समय के नमूने लेता हूं, उदाहरण के लिए 10, और उस कॉल में प्रत्येक पर दिखाई देने का 50% मौका है, इसलिए यह लगभग आधे नमूने पर होगा। इस प्रकार यह मेरा ध्यान आकर्षित करेगा, और मैं यह देखने के लिए देखूंगा कि यह क्या कर रहा है वास्तव में आवश्यक है, और यदि नहीं, तो मैं इसे गति प्राप्त करने के लिए ठीक कर दूंगा।

अब, क्या यह माप रहा था? यदि ऐसा है, तो यह वास्तव में खराब माप था, क्योंकि नमूने की संख्या इतनी छोटी थी। यदि 10 नमूनों में से 5 ने कॉल दिखाया है, तो समय का अंश लगभग 50% है, देना या लेना, और यह निश्चित रूप से 10% से अधिक है। तो मुझे परिशुद्धता के साथ प्रतिशत नहीं पता हो सकता है, लेकिन मैं निश्चित रूप से जानता हूं कि को ठीक करने के लायक है, और मैं निश्चित रूप से जानता हूं कि समस्या है।

(साइड नोट: मैंने कॉल की संख्या की गणना नहीं की है, या कॉल अवधि का अनुमान लगाया है। बल्कि, मैंने कॉल की लागत का अनुमान लगाया है, जो इसे हटा रहा है, जो बचाएगा, जो ढेर पर इसका अंशकालिक निवास समय है यह भी ध्यान दें कि मैं पर कॉल पर काम कर रहा हूं, फ़ंक्शन स्तर पर नहीं। मुझे परवाह है कि फ़ंक्शन कॉल किस प्रकार ब्याज की कॉल के ऊपर और नीचे हैं, लेकिन इसके अलावा, फ़ंक्शन-स्तरीय समस्याएं, जैसे अनन्य समय , ग्राफ को कॉल करें, और रिकर्सन, कोई भाग नहीं खेलें।)

यही कारण है कि मैं प्रदर्शन को मापने और निष्पादन समस्याओं को ढूंढने के लिए कहता हूं, जबकि वे पूरक हो सकते हैं, वास्तव में अलग-अलग कार्य हैं।

+0

... आह, एक और अनाम ड्राइव द्वारा। लेकिन जवाब अभी भी काम करता है। –

7

EQATEC Profiler निःशुल्क है।

मैंने इसे स्वयं नहीं किया है, लेकिन यह ठीक लगता है और उनकी साइट पर कुछ सकारात्मक प्रशंसापत्र हैं।

मुझे वास्तव में इसका उपयोग करने वाले किसी भी व्यक्ति की राय सुनने में दिलचस्पी होगी।

+2

यह आसान है लेकिन काम पूरा हो जाता है। और यह मुफ़्त है (व्यक्तिगत उपयोग के लिए) जो बहुत अच्छा है। – DMan

+0

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

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