मुझे याद है कि साल पहले यह सुन रहा था कि विशेष रूप से प्रोग्रामिंग माइक्रोप्रोसेसरों के दौरान बढ़ने के बजाय लूप कम करने के लिए यह अधिक कुशल है। क्या यह सच है, और यदि हां, तो क्या कारण हैं?लूप कम करने के लिए बेहतर है?
उत्तर
बल्ले से निकलने वाली एक बात यह है कि कम करने वाले लूप पर अंतिम स्थिति तेज होने के लिए उत्तरदायी है। यदि आप एक प्रमाण पत्र मूल्य पर लूप कर रहे हैं, तो उस मान के साथ तुलना प्रत्येक पुनरावृत्ति की आवश्यकता होगी। हालांकि, यदि आप शून्य पर लूपिंग कर रहे हैं, तो अधिकांश प्रोसेसर पर कमी स्वयं शून्य ध्वज सेट करेगी यदि मान घटित शून्य शून्य हो जाता है, इसलिए कोई अतिरिक्त तुलना ऑपरेशन की आवश्यकता नहीं होगी।
छोटे आलू मुझे एहसास है, लेकिन एक बड़े तंग आंतरिक लूप में यह एक बड़ा सौदा हो सकता है।
से तुलना करने के लिए और अधिक है यह वास्तव में उत्तर –
है यदि आप इस प्रभाव को दिखाते हुए कुछ समय विश्लेषण पोस्ट कर सकते हैं, तो यह प्रश्न फिर से खोलने योग्य हो सकता है। – Gabe
@Gabe - एक अजीब अनुरोध। आम तौर पर, मैं वास्तव में इस तरह सूक्ष्म अनुकूलन के आपके संदेह की सराहना करता हूं। मैं निश्चित रूप से ऐसा करने के लिए एचएलएल कोड को खारिज नहीं कर रहा हूं जब तक कि मेरे पास संख्याएं प्रदर्शित न हों, इससे बहुत मदद मिलती है। हालांकि, तथ्य यह है कि (M68K या Ix86 की तरह प्रोसेसर पर) इसके लिए एक अतिरिक्त निर्देश संदेह से परे है। मुझे नहीं लगता कि मेरे पास वास्तव में आपको यह साबित करने के लिए नि: शुल्क समय है कि कोई निर्देश निष्पादित करना एक निर्देश निष्पादित करने से तेज़ है। –
सी # में यह दक्षता में कोई फर्क नहीं पड़ता है। लूप कम करने का एकमात्र कारण यह है कि यदि आप संग्रह के माध्यम से लूपिंग कर रहे हैं और आइटम को हटाते समय हटा रहे हैं।
कमी के बारे में पता नहीं है, लेकिन मुझे पता है कि i ++ के बजाय ++ का उपयोग करना अधिक प्रदर्शनकारी है।
वेब पर बहुत सारे लेख क्यों हैं, लेकिन यह नीचे आता है: ++ का उपयोग करके मैं इसे बनाता हूं ताकि मुझे स्वचालित रूप से पहली बार घोषित किया जा सके और i ++ का उपयोग करने से ऐसा नहीं होता है।
फिर (कम से कम सी # में), अगर decrementing अधिक performant है पता नहीं है, बस सोचा था कि मैं वहाँ है कि बाहर फेंक होता है आप कैसे प्रदर्शन :)
तुम बस का उपयोग करेंगे बारे में पूछ रहे देखकर कमीशन क्योंकि कुछ परिस्थितियों में यह आसान है क्योंकि मुझे पता है ..
निश्चित रूप से यह सच नहीं है –
- 1. जेएसटीएल सी: प्रत्येक के लिए, कम संख्यात्मक लूप असंभव है?
- 2. बेहतर फॉर-लूप वाक्यविन्यास?
- 3. क्यों नीचे टेस्ट लूप बेहतर है?
- 4. बेहतर रैखिक प्रतिगमन के लिए जावा पुस्तकालय है? (उदा।, कम से कम वर्गों का पुन: भारित)
- 5. निष्पादन समय कम करने के लिए शुद्ध NumPy में लूप के लिए एक रिवाइटिंग
- 6. लूप के लिए लूप
- 7. कम लूप के साथ तेजी से कम करने के साथ सारांश?
- 8. क्या लूप के बाहर वर्रों को परिभाषित करना बेहतर है?
- 9. पाइथन विकल्प को कम करने के लिए विकल्प()
- 10. लूप के लिए jquery लूप
- 11. लूप या बाहरी लूप के लिए वापसी
- 12. एमवीसी के लिए विकल्प जो कम से कम युग्मित है?
- 13. लूप के लिए पाइथन लूप काउंटर
- 14. यूआरएल रूटिंग कैसे कम करने के लिए?
- 15. कैसे कम करने के लिए MSBuild बार
- 16. एनएसटीमर का उपयोग करने के अलावा आईफोन पर गेम लूप बनाने का बेहतर तरीका क्या है?
- 17. उपयोग करने के लिए बेहतर क्या है: एक्शन बनाम एक्शनलिस्टर?
- 18. सी ++ संदर्भ या कमजोर_पीआरआर वापस करने के लिए बेहतर है?
- 19. प्रत्येक लूप के लिए नेस्टेड, आंतरिक लूप
- 20. जावास्क्रिप्ट ऐरे को कम करने() विधि का उपयोग करने के लिए कोई वास्तविक लाभ है?
- 21. बेहतर सुरक्षा प्रदान करने के लिए डोंगल संलग्न प्रणाली के लिए क्या कोड लिखना है?
- 22. अपवाद फेंकने के लिए बेहतर कब होता है और कुछ त्रुटि लॉग 'ऑब्जेक्ट' वापस करने के लिए बेहतर होता है?
- 23. कौन सा बेहतर है ?: (+ कम करें ...) या (लागू + ...)?
- 24. क्या लूप के लिए सी ++ 11 नए या बेहतर अनुकूलन की अनुमति देता है?
- 25. लूप के लिए नेस्टेड रीफैक्टरिंग
- 26. लूप के लिए जावास्क्रिप्ट
- 27. आप कम से कम एक प्रदर्शित करने के लिए, मैं इस त्रुटि हो रही है
- 28. असीमित के लिए लूप
- 29. ऑब्जेक्ट गुणों को कम करने के लिए समाधान?
- 30. PHP memory_limit के लिए बेहतर है?
शायद यह असेंबलर निर्देश 'लूप' पर निर्भर करता है जो 'ईसीएक्स' को शून्य में घटा देता है। लेकिन उच्च स्तर की भाषाओं पर इसे अधिक प्रभाव नहीं देना चाहिए। – Nobody
सी # टैग उलझन में है: आपका प्रश्न सीपीयू आर्किटेक्चर पर निर्भर करता है, लेकिन सी # को आईएल कोड में संकलित किया गया है जिसे निर्देश सेट –
के आधार पर विभिन्न मशीन कोड निर्देशों में अनुवादित किया जा सकता है यदि आपके पास वास्तविक कोड है जो दूसरे की तुलना में तेज़ तरीका है , इसे पोस्ट करें और पूछें क्यों। अन्यथा, यह एक बहुत ही उपयोगी सवाल नहीं है। – Gabe