विरल सशर्त निरंतर प्रसार

From alpha
Jump to navigation Jump to search

कंप्यूटर विज्ञान में, विरल सशर्त निरंतर प्रचार (एससीसीपी) स्टेटिक सिंगल असाइनमेंट फॉर्म (एसएसए) में रूपांतरण के बाद संकलकों में अक्सर एक अनुकूलन होता है। यह एक साथ पूरे कार्यक्रम में कुछ प्रकार के मृत कोड और निरंतर फोल्डिंग को हटा देता है। इसके अलावा, यह अधिक स्थिर मान पा सकता है, और इस प्रकार सुधार के लिए अधिक अवसर, अलग-अलग मृत कोड उन्मूलन और निरंतर प्रसार को किसी भी क्रम में या किसी भी संख्या में दोहराव से लागू कर सकता है।[1][2] एल्गोरिदम एसएसए फॉर्म में कोड की अमूर्त व्याख्या करके संचालित होता है। अमूर्त व्याख्या के दौरान, यह आम तौर पर मूल्यों के लिए स्थिरांक के एक फ्लैट जाली (क्रम) का उपयोग करता है और इस जाली में मूल्यों के लिए वैश्विक पर्यावरण मानचित्रण एसएसए चर। कलन विधि का सार यह है कि यह शाखा निर्देशों की व्याख्या को कैसे संभालता है। जब सामना किया जाता है, तो शाखा के लिए स्थिति का मूल्यांकन सर्वोत्तम संभव के रूप में किया जाता है, जो कि स्थिति में चर के लिए अमूर्त मूल्यों की शुद्धता को देखते हुए किया जाता है। यह मामला हो सकता है कि मान पूरी तरह से सटीक हैं (न तो ऊपर और न ही नीचे) और इसलिए, अमूर्त निष्पादन शाखा को किस दिशा में तय कर सकता है। यदि मान स्थिर नहीं हैं, या स्थिति में एक चर अपरिभाषित है, तो रूढ़िवादी बने रहने के लिए दोनों शाखा दिशाओं को लिया जाना चाहिए।

सार व्याख्या के पूरा होने पर, निर्देश जो कभी नहीं पहुंचे थे उन्हें मृत कोड के रूप में चिह्नित किया गया है। एसएसए वेरिएबल्स को निरंतर मान मिलते हैं, फिर उनके उपयोग के बिंदु पर इनलाइन (प्रचारित) किया जा सकता है।[example needed]


टिप्पणियाँ

  1. Wegman, Mark N. and Zadeck, F. Kenneth. "Constant Propagation with Conditional Branches." ACM Transactions on Programming Languages and Systems, 13(2), April 1991, pages 181-210.
  2. Click, Clifford and Cooper, Keith. "Combining Analyses, Combining Optimizations", ACM Transactions on Programming Languages and Systems, 17(2), March 1995, pages 181-196


संदर्भ

  • Cooper, Keith D. and Torczon, Linda. Engineering a Compiler. Morgan Kaufmann. 2005.