आईएसएसएन: 2165- 7866
जोनिस ओलिवेरा
पिछले तीन दशकों में प्रोग्राम को अनुकूलित करने के लिए बड़ी संख्या में कंपाइलर परिवर्तन लागू किए गए हैं। यूनिप्रोसेसर के लिए अधिकांश अनुकूलन स्केलर मात्राओं और डेटा-फ्लो तकनीकों के विश्लेषण के आधार पर परिवर्तनों का उपयोग करके प्रोग्राम द्वारा निष्पादित निर्देशों की संख्या को कम करते हैं। इसके विपरीत, उच्च-प्रदर्शन सुपरस्केलर, वेक्टर और समानांतर प्रोसेसर के लिए अनुकूलन लूप निर्भरता विश्लेषण का उपयोग करके सरणियों के गुणों को ट्रैक करने पर निर्भर परिवर्तनों के साथ समानांतरता और मेमोरी लोकेलिटी को अधिकतम करते हैं। यह सर्वेक्षण C और Fortran जैसी अनिवार्य भाषाओं के लिए महत्वपूर्ण उच्च-स्तरीय प्रोग्राम पुनर्गठन तकनीकों का एक व्यापक अवलोकन है। अनुक्रमिक और विभिन्न प्रकार के समानांतर आर्किटेक्चर दोनों के लिए परिवर्तनों को गहराई से कवर किया गया है। हम प्रत्येक परिवर्तन के उद्देश्य का वर्णन करते हैं, यह निर्धारित करने का तरीका बताते हैं कि यह कानूनी है या नहीं, और इसके अनुप्रयोग का एक उदाहरण देते हैं।