सिंपलपरफ़

Android Studio में Simpleperf का ग्राफ़िकल फ़्रंट एंड शामिल है. इसे सीपीयू प्रोफ़ाइलर की मदद से, सीपीयू से जुड़ी गतिविधि की जांच करना. ज़्यादातर उपयोगकर्ता सीधे Simpleperf का इस्तेमाल करने के बजाय, इस सुविधा का इस्तेमाल करना पसंद करेंगे.

अगर आपको कमांड लाइन का इस्तेमाल करना है, तो Simpleperf एक ऐसा कमांड लाइन है जिसमें कई तरह की सुविधाएं मिलती हैं Mac, Linux, और Windows के लिए NDK में सीपीयू प्रोफ़ाइलिंग टूल शामिल है.

सभी दस्तावेज़ों के लिए, Simpleperf README से शुरुआत करें.

आसान सुझाव और रेसिपी

अगर आपने Simpleperf को अभी-अभी शुरू किया है, तो आपको यहां दिए गए कुछ निर्देश दिख सकते हैं उपयोगी होते हैं. ज़्यादा कमांड और विकल्पों के लिए, देखें Simpleperf निर्देश और विकल्पों के बारे में जानकारी.

देखें कि शेयर की गई किन लाइब्रेरी को एक्ज़ीक्यूट करने में सबसे ज़्यादा समय लगता है

इस निर्देश को चलाकर, यह देखा जा सकता है कि किन .so फ़ाइलों को एक्ज़ीक्यूट करने में सबसे ज़्यादा इस्तेमाल हो रहा है समय (सीपीयू साइकल की संख्या के आधार पर). शुरू करते समय, यह सबसे पहले चलाने के लिए एक अच्छा निर्देश है आपके कैंपेन की परफ़ॉर्मेंस का विश्लेषण किया गया है.

$ simpleperf report --sort dso

पता करें कि किन फलनों को लागू करने में सबसे ज़्यादा समय लगता है

यह पता चलने के बाद कि शेयर की गई कौनसी लाइब्रेरी, एक्ज़ीक्यूट करने में सबसे ज़्यादा समय लेती है, आपके पास कमांड की मदद से यह देखा जा सकता है कि उस .so फ़ाइल के फ़ंक्शन को एक्ज़ीक्यूट करने में कितना समय लगा.

$ simpleperf report --dsos library.so --sort symbol

थ्रेड में बिताए गए समय का प्रतिशत देखना

.so फ़ाइल को चलाए जाने में लगने वाले समय को, एक से ज़्यादा थ्रेड में बांटा जा सकता है. इस निर्देश को इन कामों के लिए चलाया जा सकता है: हर थ्रेड में बिताए गए समय का प्रतिशत देखें.

$ simpleperf report --sort tid,comm

ऑब्जेक्ट मॉड्यूल में बिताए गए समय का प्रतिशत पता करना

ऐसे थ्रेड ढूंढने के बाद जहां एक्ज़ीक्यूशन का सबसे ज़्यादा समय चलता है, इस निर्देश का इस्तेमाल उन ऑब्जेक्ट मॉड्यूल को अलग करें जो उन थ्रेड पर सबसे ज़्यादा समय लेते हैं.

$ simpleperf report --tids threadID --sort dso

देखें कि फ़ंक्शन कॉल एक-दूसरे से कैसे जुड़े हैं

कॉल ग्राफ़ में स्टैक ट्रेस को विज़ुअल तौर पर दिखाया जाता है, जिसे Simpleperf ने शामिल किया जा रहा है.

report -g कमांड का इस्तेमाल करके, कॉल ग्राफ़ को प्रिंट किया जा सकता है. इससे यह पता लगाया जा सकता है कि फ़ंक्शन को अन्य फ़ंक्शन के ज़रिए कॉल किया जाता है. इससे यह तय किया जा सकता है कि कोई फ़ंक्शन इतनी धीमी है या नहीं या ऐसा इसलिए है, क्योंकि एक या इससे ज़्यादा फ़ंक्शन धीमे काम करते हैं.

$ simpleperf report -g

डिसप्ले में दिखने वाले इंटरैक्टिव टूल को शुरू करने के लिए, Python स्क्रिप्ट report.py -g का भी इस्तेमाल किया जा सकता है फ़ंक्शन. हर फ़ंक्शन पर क्लिक करके देखा जा सकता है कि उस बच्चे के काम करने के बीच कितना समय बीतता है.

Unity के साथ बनाए गए प्रोफ़ाइलिंग ऐप्लिकेशन

अगर Unity के साथ बनाए गए ऐप्लिकेशन की प्रोफ़ाइल बनाई जा रही है, तो पक्का करें कि ऐप्लिकेशन को डीबग सिंबल बनाने के लिए, यह तरीका अपनाएं:

  1. Unity एडिटर में अपना Android प्रोजेक्ट खोलें.
  2. Android प्लैटफ़ॉर्म के लिए बिल्ड सेटिंग विंडो में, पक्का करें कि डेवलपमेंट बिल्ड विकल्प चुना गया है.
  3. प्लेयर सेटिंग पर क्लिक करें और स्ट्रिपिंग लेवल प्रॉपर्टी को बंद है.