Product Design, Manufacturing & Innovation Resources
घर » जस्ट-इन-टाइम (JIT) संकलन

जस्ट-इन-टाइम (JIT) संकलन

1990
Software engineer optimizing JIT compilation in a modern workspace.

(यह छवि केवल उदाहरण के लिए बनाई गई है)

Just-in-time (JIT) संकलन एक हाइब्रिड दृष्टिकोण है जो संकलन और व्याख्या दोनों की विशेषताओं को जोड़ता है। कोड को पहले से संकलित करने (AOT) के बजाय, JIT संकलक यह बाइटकोड को निष्पादन से ठीक पहले, रनटाइम पर नेटिव मशीन कोड में अनुवादित करता है। इससे वास्तविक रनटाइम व्यवहार के आधार पर गतिशील अनुकूलन संभव हो पाता है, जिससे अक्सर शुद्ध व्याख्या की तुलना में प्रदर्शन में सुधार होता है।

एक JIT कंपाइलर रनटाइम वातावरण या वर्चुअल मशीन के भीतर काम करता है। जब किसी मेथड को पहली बार कॉल किया जाता है, तो उसका प्लेटफ़ॉर्म-स्वतंत्र बाइटकोड नेटिव मशीन कोड में कंपाइल होकर कैश हो जाता है। उस मेथड को बाद में कॉल करने पर तेज़, नेटिव कोड सीधे एग्जीक्यूट होता है, जिससे इंटरप्रिटेशन का अतिरिक्त भार नहीं लगता। इससे स्टार्टअप या वार्म-अप में थोड़ा विलंब होता है, लेकिन लंबे समय तक चलने वाले एप्लिकेशन के लिए इससे प्रदर्शन में काफी सुधार हो सकता है।

JIT कंपाइलेशन का मुख्य लाभ प्रोफाइल-गाइडेड या एडैप्टिव ऑप्टिमाइजेशन करने की क्षमता है। रनटाइम कोड के निष्पादन की निगरानी कर सकता है, जिससे यह पता चलता है कि कौन से कोड पाथ "हॉट" (बार-बार निष्पादित) हैं और किस प्रकार के डेटा को प्रोसेस किया जा रहा है। यह रनटाइम जानकारी, जो स्टैटिक AOT कंपाइलर के लिए उपलब्ध नहीं होती, JIT को बेहतर ऑप्टिमाइजेशन निर्णय लेने में सक्षम बनाती है। उदाहरण के लिए, यदि यह देखता है कि किसी विशेष कंक्रीट टाइप का हमेशा उपयोग किया जाता है, तो यह वर्चुअल मेथड कॉल्स का स्पेक्युलेटिव इनलाइनिंग कर सकता है। यदि यह धारणा बाद में गलत साबित होती है, तो JIT "डीऑप्टिमाइजेशन" कर सकता है और एक सुरक्षित निष्पादन पथ पर वापस जा सकता है। यह गतिशील प्रकृति JIT कंपाइलेशन को ऑब्जेक्ट-ओरिएंटेड और डायनामिक भाषाओं के लिए अत्यंत प्रभावी बनाती है।

UNESCO Nomenclature: 1203
कंप्यूटर विज्ञान

Type

सॉफ्टवेयर/एल्गोरिदम

व्यवधान

संतोषजनक

उपयोग

व्यापक उपयोग

शगुन

  • समय से पहले (एओटी) संकलक
  • दुभाषिए
  • पी-कोड और अन्य बाइटकोड प्रणालियाँ
  • स्मॉलटॉक और लिस्प जैसी गतिशील भाषाओं में अनुसंधान
  • वर्चुअल मशीन अवधारणाएँ

आवेदन

  • जावा वर्चुअल मशीन (जेवीएम)
  • .NET कॉमन लैंग्वेज रनटाइम (CLR)
  • वेब ब्राउज़रों में जावास्क्रिप्ट इंजन (जैसे, v8)
  • pypy, एक उच्च-प्रदर्शन वाला पायथन कार्यान्वयन
  • डेटाबेस क्वेरी निष्पादन इंजन

पेटेंट:

NA

संभावित नवाचार विचार

बॉट ट्रैफिक को कम करने के कारण, जो वर्तमान में प्रति दिन 40,000 से अधिक है, यह सामग्री केवल समुदाय के सदस्यों के लिए आरक्षित है।
> लॉगिन < या > रजिस्टर < इस सामग्री और अन्य सभी प्रतिबंधित सामग्रियों और उपकरणों तक पहुंच (100% निःशुल्क) है।

संबंधित विषय: JIT, जस्ट-इन-टाइम कंपाइलेशन, डायनेमिक कंपाइलेशन, वर्चुअल मशीन, JVM, CLR, V8, बाइटकोड, एडेप्टिव ऑप्टिमाइजेशन, रनटाइम।

ऐतिहासिक संदर्भ

जस्ट-इन-टाइम (JIT) संकलन

1980
1986-01-01
1990
1990
1993
1998
2010
1980
1982-07-01
1988-06-01
1990
1993
1997-04-23
2001
2010

(यदि तिथि अज्ञात है या प्रासंगिक नहीं है, उदाहरण के लिए "द्रव यांत्रिकी", तो इसके उल्लेखनीय उद्भव का एक अनुमानित आंकड़ा प्रदान किया गया है)

संबंधित आविष्कार, नवाचार और तकनीकी सिद्धांत

पंजीकृत सदस्यों के लिए पूर्ण आकार की छवियाँ और डाउनलोड 100% निःशुल्क उपलब्ध हैं।