क्या कोई अध्ययन या बेंचमार्क सेट है जो प्रदर्शन को प्रदर्शित करता है डीसीसी में सख्त-अलियासिंग निर्दिष्ट करने के कारण गिरावट (या अन्य कंपेलरों में समतुल्य)?-फनो-सख्त-एलियासिंग का प्रदर्शन प्रभाव
उत्तर
यह कंपाइलर से कंपाइलर से बहुत भिन्न होगा, क्योंकि विभिन्न कंपाइलर्स आक्रामकता के विभिन्न स्तरों के साथ इसे लागू करते हैं। जीसीसी इसके बारे में काफी आक्रामक है: सख्त एलियासिंग को सक्षम करने से यह संकेत मिलता है कि पॉइंटर्स जो "स्पष्ट रूप से" मानव के बराबर हैं (जैसा कि foo* a; bar * b; b = (foo*)a;
) उपनाम नहीं कर सकते हैं, जो कुछ बहुत ही आक्रामक परिवर्तनों की अनुमति देता है, लेकिन स्पष्ट रूप से गैर सावधानी से तोड़ सकता है लिखित कोड इस कारण से ऐप्पल का जीसीसी डिफ़ॉल्ट रूप से सख्त एलियासिंग अक्षम करता है।
LLVM, इसके विपरीत, यहां तक कि सख्त अलियासिंग नहीं है, और, जबकि यह योजना बनाई है, डेवलपर्स ने कहा है कि वे एक फॉल-बैक मामला है जब और कुछ नहीं तुल्यता निर्णय कर सकते हैं के रूप में इसे लागू करने की योजना है। उपर्युक्त उदाहरण में, यह अभी भी ए और बी समकक्ष का न्याय करेगा। यह केवल टाइप-आधारित एलियासिंग का उपयोग करेगा यदि यह किसी अन्य तरीके से अपने रिश्ते को निर्धारित नहीं कर सका।
मेरे अनुभव में, सख्त एलियासिंग के प्रदर्शन प्रभाव को ज्यादातर लूप इनवेरिएंट कोड गति के साथ करना पड़ता है, जहां टाइप जानकारी का उपयोग यह साबित करने के लिए किया जा सकता है कि इन-लूप लोड सरणी को फिर से चालू नहीं कर सकता है, जिससे उन्हें लूप से बाहर खींच लिया जाना चाहिए। YMMV।
एलएलवीएम का दृष्टिकोण मेरे लिए सही एक जैसा लगता है – Spudd86
मैं आपको अनुभव से क्या कह सकता हूं (पीएस 3 पर एक बड़ी परियोजना के साथ इसका परीक्षण करने के बाद, पावरपीसी एक आर्किटेक्चर है कि इसके कारण कई रजिस्ट्रार वास्तव में एसए से बहुत लाभ उठा सकते हैं) यह है कि आप जिन अनुकूलन को देखने जा रहे हैं आम तौर पर बहुत स्थानीय (दायरे के अनुसार) और छोटे होने जा रहे हैं। एक 20 एमबी निष्पादन योग्य पर यह शायद 80kb .text खंड (= कोड) से छीन लिया गया था और यह सब छोटे scopes & loops में था।
यह विकल्प आपके जेनरेट कोड को थोड़ा अधिक हल्का और अनुकूलित कर सकता है (अभी 1 से 5 प्रतिशत रेंज में सोचें), लेकिन किसी भी बड़े नतीजे की उम्मीद न करें। इसलिए, -नो-सख्त-एलियासिंग का उपयोग करने का असर शायद आपके प्रदर्शन पर एक बड़ा प्रभाव नहीं होने वाला है। उस ने कहा, कोड होने के लिए -फनो-सख्त-एलियासिंग एक उप-परिस्थिति स्थिति है।
क्योंकि कोड आकार == गति? आपका पीएस 3 उदाहरण न तो यहां और न ही वहां है। यह कैसे चला गया? – Eloff
मैं कहां कहूं कि यह तेज़ है? यह हो सकता है - यह बिल्कुल असंभव नहीं है कि संभावित भार/स्टोर छोड़े जाते हैं - और किसी भी मामले में एक स्मृति निष्पादन योग्य स्मृति मशीन पर बेहतर है। तो यह यहाँ है, और यह भी वहाँ है। – nielsj
ओपी ने प्रदर्शन प्रभावों के लिए कहा और आपने केवल कोड आकार पर चर्चा की। फिर आपने एक आईपीएसओ तथ्य तर्क दिया कि आपको एक बड़ा प्रदर्शन अंतर क्यों नहीं दिखाई देगा। फिर आपने लिनक्स कर्नेल को "सबोपेटिमल स्टेटस सर्वश्रेष्ठ" कहा। मुझे लगता है कि आप देख सकते हैं कि आपको डाउनवोट क्यों मिला। – Eloff
यहां 2004 में आयोजित अध्ययन का एक लिंक है: http://docs.lib.purdue.edu/cgi/viewcontent.cgi?article=1124&context=ecetr, दूसरों के बीच, कोड प्रदर्शन पर सख्त अलियासिंग प्रभाव। चित्रा 2.5 3% से 10% के सापेक्ष सुधार दिखाता है। प्रदर्शन में ख़राबी की
शोधकर्ताओं ने 'स्पष्टीकरण:
विधानसभा कोड का निरीक्षण से, हमने पाया है कि गिरावट रजिस्टर आबंटन एल्गोरिथ्म का प्रभाव है। जीसीसी ग्राफ ग्राफिंग रजिस्टर आवंटक [2, 3] लागू करता है। सख्त एलियासिंग के साथ, चर के लाइव रेंज लंबे हो जाते हैं, जिससे उच्च रजिस्टर दबाव और 'स्पिलिंग होती है। अधिक रूढ़िवादी एलियासिंग के साथ, वही चर उनके (छोटे) लाइव श्रेणियों के अंत में स्मृति स्थानान्तरण भी करते हैं।
[2] पीटर बर्गनर, पीटर डाहल, डेविड एनगेब्रेसेन, और मैथ्यू टी। ओकेफ। हस्तक्षेप क्षेत्र स्पिलिंग के माध्यम से कोड कम करें। प्रोग्रामिंग भाषा डिजाइन और कार्यान्वयन, पृष्ठ 287-295, 1997.
[3] प्रेस्टन ब्रिग्स, कीथ डी कूपर और लिंडा टॉर्ज़न पर सिग्प्लान सम्मेलन में। ग्राफ़ रंग पंजीकरण आवंटन में सुधार। प्रोग्रामिंग भाषाएं और सिस्टम पर एसीएम लेनदेन, 16 (3): 428-455, मई 1 99 4।
क्या आप किसी भी अध्ययन के बारे में जानते हैं जो ऑप्टिमाइज़ेशन के मूल्य को देखता है जिसे सख्त एलियासिंग द्वारा अनुमति दी जाएगी * जिसे 'प्रतिबंधित' क्वालीफायर * के माध्यम से भी हासिल नहीं किया जा सकता है? – supercat
मुझे कोई नहीं पता, क्या आप किसी भी अनुकूलन के बारे में जानते हैं जो इन आवश्यकताओं को पूरा करेगा? – SzymonPajzert
'प्रतिबंध' क्वालिफ़ायर को एक कंपाइलर को बताने के लिए प्रभावी रूप से उपयोग नहीं किया जा सकता है कि स्थैतिक-अवधि ऑब्जेक्ट्स उपनाम नहीं होंगे, और कुछ मामलों में प्रोग्रामों में एक ही प्रकार के एकाधिक संभावित-संबंधित पॉइंटर्स हो सकते हैं जो एक-दूसरे को उपनाम कर सकते हैं। टाइप-आधारित एलियासिंग उन मामलों में कुछ अनुकूलन की अनुमति देगा जो अन्यथा उपलब्ध नहीं होंगे। आईएमएचओ, ऐसे मामलों को बेहतर क्वालीफायर जोड़कर बेहतर तरीके से संभाला जा सकता था (उदाहरण के लिए उन मामलों में 'रजिस्टर' क्वालीफायर की अनुमति दें जहां ऑब्जेक्ट को बाहरी कोड के संपर्क में लाया जा सकता है, लेकिन जो व्यवहार कर सकता है जैसे कि पॉइंटर के माध्यम से एक्सेस किए जाने पर उन्हें नया पता मिलता है)। – supercat
- 1. jvmti का प्रदर्शन प्रभाव?
- 2. वर्चुअल विधियों का प्रदर्शन प्रभाव
- 3. प्रदर्शन पर सिस्टमटैप प्रभाव
- 4. कंपाइलर प्रदर्शन पर हाइपरथ्रेडिंग का प्रभाव?
- 5. सार्वभौमिक चयनकर्ता का प्रदर्शन प्रभाव क्या है?
- 6. PostgreSQL: अतिरिक्त कॉलम का प्रदर्शन प्रभाव
- 7. बड़े परमजन आकार + प्रदर्शन प्रभाव
- 8. प्रदर्शन पर डेटाबेस के क्षेत्र का नाम लंबाई का प्रभाव?
- 9. CanExecuteCommand के साथ कोई प्रदर्शन प्रभाव हैं?
- 10. मार्कर बनाम वेक्टर अंक - प्रदर्शन प्रभाव
- 11. 20K लाइनों का उपयोग करते समय "प्रदर्शन प्रभाव" एकल वर्ग
- 12. सी # और एएसपी.नेट में ट्रेसिंग का प्रदर्शन प्रभाव क्या है?
- 13. अपाचे प्रतिक्रिया समय लॉग निर्देश सक्षम करने का प्रदर्शन प्रभाव
- 14. क्या अप्रयुक्त आयात और ऑब्जेक्ट्स का प्रदर्शन प्रभाव
- 15. विभिन्न डेटाबेस से तालिकाओं में शामिल होने का प्रदर्शन प्रभाव
- 16. PHP चर के प्रतिलिपि बनाने का प्रदर्शन प्रभाव
- 17. सीएसएस प्रोपर्टीज के लिए फ़्लोटिंग पॉइंट मानों का प्रदर्शन प्रभाव
- 18. जावा प्रभाव प्रदर्शन में जेनेरिक का उपयोग करता है?
- 19. नेस्टेड चयनकर्ता प्रदर्शन प्रभाव और कम
- 20. क्या लिनक्स पर एसीएल प्रभाव प्रदर्शन
- 21. प्रभाव
- 22. ini_set() प्रभाव का दायरा?
- 23. लोडरऑप्टिमाइजेशन का प्रभाव
- 24. क्या रेडिस में नाम लंबाई प्रभाव प्रदर्शन करता है?
- 25. डेटाबेस प्रदर्शन पर सक्षम टीडीई के प्रभाव क्या हैं?
- 26. क्या Node.js के प्रभाव प्रदर्शन को कम करता है?
- 27. बहुत सारे जेएस के ब्राउज़र प्रदर्शन प्रभाव में
- 28. सैकड़ों निष्क्रिय धागे का प्रभाव
- 29. एसक्यूएल संग्रहीत प्रक्रियाओं में टिप्पणियों के प्रदर्शन प्रभाव
- 30. क्या अपवाद प्रभाव प्रदर्शन को लपेटना और पुनर्स्थापित करना है?
सटीक डुप्लिकेट: http://stackoverflow.com/questions/754929/strict-aliasing – GManNickG
मुझे उस चर्चा पर कोई प्रदर्शन संख्या नहीं मिली। मैं कुछ परीक्षा परिणाम/डेटा की तलाश में हूं। क्या मैं कुछ भुल गया? – Carlos
एफडब्ल्यूआईडब्ल्यू, स्वीकृत उत्तर में कोई प्रदर्शन संख्या नहीं है। – peterchen