2009-09-25 10 views
6

क्या कोई लेख ऑनलाइन उपलब्ध है जहां मुझे आईफोन एप्लिकेशन प्रदर्शन में सुधार करने के लिए कुछ सुझाव मिल सकते हैं। मैंने मेमोरी मैनेजमेंट और सीपीयू चक्रों पर ऐप्पल डॉक्स पढ़े हैं, लेकिन वे बहुत उपयोगी नहीं हैं।प्रदर्शन के लिए एक्सकोड बिल्ड सेटिंग्स - आईफोन ऐप्स

क्या कोई भी कुछ एक्सकोड सेटिंग्स सुझा सकता है जो एप्लिकेशन (रिलीज़ संस्करण) के प्रदर्शन में सुधार कर सकते हैं?

धन्यवाद कटोरे

+0

आप वास्तव में प्रदर्शन हिट कहां देख रहे हैं? – pzearfoss

उत्तर

8

मापने और अनुकूलन के लघु, संकलक अनुकूलन स्तर सिर्फ एक ही चीज़ है कि आपके आवेदन के प्रदर्शन को प्रभावित करेगा के बारे में है। आमतौर पर, आप -Os का अनुकूलन स्तर चाहते हैं; वह है, अनुकूलित कोड, लेकिन आकार के लिए अनुकूलित भी। चूंकि आईफोन की मेमोरी सीमित है, कोड आकार को कम करना उपयोगी है।

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

यह देखते हुए कि आपने वास्तव में कुछ भी नहीं मापा है (जो अच्छा है - इसे काम करें, इसे सही बनाएं, इसे तेज बनाएं), कम लटकते फल हो सकते हैं। क्या आप अक्सर कुछ फिर से तैयार करते हैं? कुछ स्वचालित समय घटना फायरिंग बहुत तेजी से है? आदि ... बस समयपूर्व अनुकूलन के जाल में मत आना; & मापने की आवश्यकता सफल अनुकूलन के लिए सर्वोपरि है।

ध्यान दें कि आप सिम्युलेटर के माध्यम से मोटे अनाज अनुकूलन कर सकते हैं, लेकिन आपको अंतिम पॉलिश अनुकूलन करने के लिए डिवाइस पर चल रहे ऐप पर विश्लेषण करने की ज़रूरत है।


(1) ध्वनि अपने डेटाबेस क्वेरी की तरह वास्तव में धीमी है। स्कीमा, आदि को नहीं जानते, यह जानना मुश्किल है कि क्या वास्तव में यह मामला है।

(2) प्रदर्शन विश्लेषण करते समय और अज्ञात लाइब्रेरी में किसी फ़ंक्शन द्वारा समय का उपभोग किया जाता है, तो स्टैक को देखें और देखें कि लाइब्रेरी को यह पता लगाने के लिए क्या कॉल कर रहा है कि आपका ऐप प्रदर्शन मंदी को क्यों ट्रिगर कर रहा है।

+0

आपकी टिप्पणियों के लिए धन्यवाद! मेरा आवेदन मूल रूप से एक UIKit एप्लिकेशन है जो खिलाड़ियों को कुछ प्रश्न पूछता है और फिर उनकी संगतता का पता लगाएगा। इसलिए इसमें UIUuttons, UIPickerControl, UITextView इत्यादि जैसे कई यूआई नियंत्रण हैं जब उपयोगकर्ता कोई बटन चुनता है, तो ऐप को प्रतिक्रिया देने के लिए 2-3 सेकंड तक लगते हैं, यह सिर्फ डीबी से एक नया प्रश्न ला रहा है जो नहीं करता है ज्यादा समय ले लो मैंने शार्क और इंस्ट्रूमेंट्स जैसे विभिन्न टूल्स की कोशिश की और पाया कि सीपीयू चक्र बर्बाद हो गए हैं और वे सभी अज्ञात पुस्तकालय में हैं। धन्यवाद – Jugs

2

असल में, बीबीएम ने क्या कहा। वास्तविक डेटा प्राप्त करें और वहां से जाएं। उस ने कहा, कुछ संकलन झंडे हैं जो पर्याप्त प्रभाव डाल सकते हैं:

  • सुनिश्चित करें कि आप -00 पर संकलित नहीं कर रहे हैं। जैसा कि बीबीएम ने नोट किया,-शायद वही है जो आप चाहते हैं।
  • यदि आप बहुत सारे फ़्लोटिंग-पॉइंट गणना कर रहे हैं, तो सुनिश्चित करें कि "थंब के लिए संकलन" (-मथम्ब) एआरएमवी 6 के लिए निर्माण करते समय सेट नहीं है। एआरएमवी 6 पर सेट अंगूठे निर्देश में फ्लोटिंग-पॉइंट निर्देश नहीं हैं, इसलिए आप अपने द्वारा उपयोग किए जाने वाले प्रत्येक फ़्लोटिंग-पॉइंट ऑपरेशन के लिए एक शिम मारा। अक्सर यह कोड आकार बचत से ऑफसेट होता है, लेकिन यदि आपके पास बहुत अधिक फ़्लोटिंग-पॉइंट है तो यह एक प्रदर्शन खतरे हो सकता है। ध्यान दें कि आप अंगूठे के लिए अपनी परियोजना का हिस्सा बना सकते हैं और इसके साथ भाग बंद कर सकते हैं। यह भी ध्यान रखें कि एआरएमवी 7 पर थंब 2 निर्देश सेट फ्लोटिंग-पॉइंट का समर्थन करता है।
+0

-O0 क्या है? Google कुछ भी नहीं दिखाता है – quantumpotato

2

iPhone प्रदर्शन में सुधार करने का सबसे अच्छा तरीका ऐप्लिकेशन में सुधार करने के लिए, और न सिर्फ संकलक अनुकूलन के माध्यम से, लेकिन बेहतर एल्गोरिदम के माध्यम से है।

आम तौर पर संकलक अनुकूलन कुछ या दो अंकों के प्रतिशत द्वारा आपके प्रदर्शन को बेहतर बना सकता है। बेहतर एल्गोरिदम, कैशिंग, पुन: आर्किटेक्चरिंग आदि का उपयोग करके कोड ऑप्टिमाइज़ेशन में तीन अंकों का प्रतिशत सुधार हो सकता है।

मुझे कभी भी एक कंपाइलर सेटिंग नहीं मिली है जो मेरे ऐप के प्रदर्शन को ध्यान में सुधारती है। आपकी मील भिन्न हो सकती है।

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