ScholarGate
सहायक

निर्देश-स्तर समानांतरता

निर्देश-स्तर समानांतरता (ILP) एक ही प्रोग्राम से कई निर्देशों को एक साथ निष्पादित करने की क्षमता है, जिसका उपयोग सुपरस्केलर और वीएलआईडब्ल्यू प्रोसेसर द्वारा किया जाता है जो प्रति चक्र कई निर्देशों को जारी और पूरा करते हैं।

PaperMind से विषय खोजेंजल्द हीFind papers & topics
Tools & resources
स्लाइड डाउनलोड करें
Learn & explore
वीडियोजल्द ही

Definition

निर्देश-स्तर समानांतरता वह डिग्री है जिस तक एक ही प्रोग्राम के निर्देशों को समानांतर में निष्पादित किया जा सकता है; प्रोसेसर डेटा और नियंत्रण निर्भरताओं के अधीन, प्रति क्लॉक चक्र एक से अधिक निर्देश जारी करके, निष्पादित करके और पूरा करके इसका उपयोग करते हैं।

Scope

यह विषय एक निर्देश स्ट्रीम के भीतर उपलब्ध समानांतरता और हार्डवेयर तथा कंपाइलर द्वारा इसे कैसे निकाला जाता है, को शामिल करता है: प्रति चक्र कई निर्देशों का सुपरस्केलर जारी करना, बहुत लंबी निर्देश शब्द (VLIW) डिज़ाइन, निर्भरता विश्लेषण, रजिस्टर का नाम बदलना, और अटकलें। इसमें उपलब्ध आईएलपी की सीमाएं भी शामिल हैं। यह कोर और लेन (समानांतर और मल्टीकोर आर्किटेक्चर) में थ्रेड- और डेटा-स्तर समानांतरता और बुनियादी एकल-जारी पाइपलाइन (पाइपलाइनिंग और खतरे) को बाहर करता है।

Core questions

  • एक विशिष्ट प्रोग्राम के निर्देशों के बीच स्वाभाविक रूप से कितनी समानांतरता उपलब्ध है?
  • सुपरस्केलर प्रोसेसर कैसे तय करते हैं कि कौन से निर्देश एक साथ जारी हो सकते हैं?
  • वीएलआईडब्ल्यू डिज़ाइन समानांतरता खोजने का बोझ कंपाइलर पर कैसे डालते हैं?
  • कौन सी निर्भरताएं और खतरे यह सीमित करते हैं कि कितना आईएलपी प्राप्त किया जा सकता है?

Key concepts

  • सुपरस्केलर जारी करना
  • बहुत लंबी निर्देश शब्द (VLIW)
  • डेटा और नाम निर्भरताएं
  • रजिस्टर का नाम बदलना
  • कई कार्यात्मक इकाइयां
  • अटकलें
  • आईएलपी सीमाएं
  • प्रति चक्र निर्देश (IPC)

Key theories

गतिशील निर्देश शेड्यूलिंग
हार्डवेयर निर्भरताओं को ट्रैक करके और कई कार्यात्मक इकाइयों पर तैयार निर्देशों को शेड्यूल करके रन टाइम पर आईएलपी का पता लगा सकता है और उसका उपयोग कर सकता है; टोमासुलो का एल्गोरिथम, आरक्षण स्टेशनों और रजिस्टर के नाम बदलने के साथ, आउट-ऑफ-ऑर्डर, समानांतर जारी करने को सक्षम करने वाला विहित तंत्र है।

Mechanisms

सुपरस्केलर प्रोसेसर प्रति चक्र कई निर्देशों को प्राप्त और डिकोड करते हैं, उनकी निर्भरताओं की जांच करते हैं, गलत निर्भरताओं को हटाने के लिए रजिस्टरों का नाम बदलते हैं, और कई कार्यात्मक इकाइयों को स्वतंत्र निर्देश जारी करते हैं। वीएलआईडब्ल्यू डिज़ाइन इसके बजाय कंपाइलर पर निर्भर करते हैं कि वह स्वतंत्र ऑपरेशनों को विस्तृत निर्देश शब्दों में बंडल करे। वास्तविक डेटा निर्भरताएं और नियंत्रण प्रवाह प्राप्य समानांतरता पर एक ऊपरी सीमा निर्धारित करते हैं, जिसे अटकलें और बड़ी निर्देश विंडो विस्तारित करने का प्रयास करते हैं।

Clinical relevance

आईएलपी तकनीकों ने दशकों तक एकल-थ्रेड प्रदर्शन वृद्धि को बढ़ावा दिया और उच्च-प्रदर्शन सीपीयू कोर के लिए केंद्रीय बनी हुई हैं। उनकी घटती वापसी — जैसे ही उपलब्ध समानांतरता और जटिलता की सीमाएं पहुंच गईं — उद्योग के मल्टीकोर और स्पष्ट समानांतरता की ओर आगे बढ़ने का एक प्रमुख कारण था।

History

कई कार्यात्मक इकाइयां और गतिशील शेड्यूलिंग 1960 के दशक में सीडीसी 6600 और आईबीएम सिस्टम/360 मॉडल 91 में दिखाई दिए। सुपरस्केलर डिज़ाइन 1990 के दशक में मुख्यधारा बन गए, और इंटेल के इटानियम जैसे वीएलआईडब्ल्यू आर्किटेक्चर ने कंपाइलर-संचालित समानांतरता का पीछा किया। 1990 के दशक की शुरुआत में आईएलपी की सीमाओं के अध्ययनों ने स्पष्ट किया कि एक ही थ्रेड के भीतर समानांतरता क्यों सीमित है।

Debates

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

Key figures

  • Robert Tomasulo
  • Yale Patt
  • John L. Hennessy
  • Joseph A. Fisher
  • James E. Smith

Related topics

Seminal works

  • hennessy2019
  • tomasulo1967

Frequently asked questions

सुपरस्केलर और वीएलआईडब्ल्यू में क्या अंतर है?
दोनों प्रति चक्र कई ऑपरेशन निष्पादित करते हैं। एक सुपरस्केलर प्रोसेसर हार्डवेयर में, रन टाइम पर तय करता है कि कौन से निर्देश एक साथ जारी हो सकते हैं; एक वीएलआईडब्ल्यू प्रोसेसर कंपाइलर पर निर्भर करता है कि वह स्वतंत्र ऑपरेशनों को समय से पहले विस्तृत निर्देशों में समूहित करे, जिससे हार्डवेयर सरल हो जाता है लेकिन कंपाइलर से अधिक मांग करता है।
निर्देश-स्तर समानांतरता की सीमा क्यों है?
वास्तविक प्रोग्रामों में वास्तविक डेटा निर्भरताएं और लगातार शाखाएं होती हैं जो यह सीमित करती हैं कि कितने निर्देश समानांतर में चल सकते हैं। एक निश्चित विंडो से परे, प्राप्य समानांतरता संतृप्त हो जाती है, इसलिए अधिक आईएलपी निकालने से अतिरिक्त हार्डवेयर जटिलता और शक्ति के सापेक्ष घटती वापसी मिलती है।

Methods for this concept

Related concepts