बेहतर प्रदर्शन में जीसीसी परिणाम जैसे कंपाइलर को संकलित करेगा?
यह आम तौर पर एक सामान्य मंच के लिए संकलित एक कार्यक्रम की तुलना में बेहतर प्रदर्शन करेंगे पर प्रयोग किया जाता है लक्ष्य मंच के लिए विशेष रूप से संकलित एक कार्यक्रम। ऐसा क्यों है? हैरवेयर के बारे में ज्ञान संकलक को डेटा को कैश अनुकूल बनाने में मदद कर सकता है और एक निर्देश ऑर्डरिंग चुन सकता है जो सीपीयू पाइपलाइनिंग के साथ अच्छी तरह से खेलता है।
एसएसई (इसके विभिन्न संस्करणों में) जैसे विशिष्ट निर्देश सेटों का लाभ उठाकर सबसे अधिक लाभ प्राप्त किया जाता है।
दूसरी ओर, आप अपने आप से पूछना अगर जीसीसी की तरह एक programm वास्तव में सीपीयू बाध्य (बहुत अधिक संभावना यह आईओ बाध्य होंगे) और उसके सीपीयू प्रदर्शन ट्यूनिंग किसी भी औसत दर्जे का लाभ प्रदान करता है है चाहिए।
कोड अपने ही संकलित संकलक द्वारा संकलित में बेहतर प्रदर्शन करेगा
उम्मीद है कि नहीं
! किसी प्रोग्राम को अनुकूलित करने के लिए एक कंपाइलर को अनुमति देना कभी भी अपना व्यवहार नहीं बदलना चाहिए। कोई फर्क नहीं पड़ता कि आपने अपना जीसीसी कैसे संकलित किया है, इसे जीसीसी के सामान्य बाइनरी वितरण के रूप में उसी बाइनरी में कोड संकलित करना चाहिए।
यदि विशिष्ट प्लेटफ़ॉर्म के लिए संकलित कोड कोड सामान्य संकल्प के लिए कोड संकलन से तेज़ है, तो हम सभी बाइनरी के बजाय कोड क्यों नहीं भेजते? मान लीजिए, कुछ लिनक्स distros वास्तव में Gento जैसे इस फिलॉसफी का पालन करें। और जब आप इसमें हों, तो स्थिर रूप से जुड़े बाइनरी बनाने के लिए सुनिश्चित करें, डिस्क स्थान आजकल इतना सस्ता है और यह आपको कम से कम 0.001% प्रदर्शन देता है।
ठीक है, यह थोड़ा सा व्यंग्यात्मक था। जेनेरिक बाइनरी वितरित करने का कारण बहुत स्पष्ट है: यह जीनेरक है, सबसे कम आम denominator और यह हर जगह काम करेगा। लचीलापन और उपयोगकर्ता के अनुकूलता के मामले में एक बड़ा बोनस है। मुझे याद है कि मेरे जेनेटू बॉक्स के लिए जीनोम संकलित करने के बाद, इसमें एक या दो दिन लग गए! (लेकिन यह बहुत तेज होना चाहिए ;-))
दूसरी तरफ, ऐसे मौके हैं जहां आप सबसे अच्छा प्रदर्शन संभव करना चाहते हैं और विशिष्ट संग्रहों के निर्माण और अनुकूलन के लिए यह समझ में आता है।
स्रोत
2012-01-23 13:24:47
_ चश्मा! वे कुछ नहीं कर _;!) – Izkata
हाँ, मैं उनसे पूछा, लेकिन वे चढ़ाई दीवार :-P – Oz123
यो dawg पर व्यस्त, मैंने सुना है आप compilers पसंद है। – joshin4colours