अन्य डिवाइस ड्राइवरों से GPU ड्राइवरों के बारे में क्या अलग है, जो प्रदर्शन अनुकूलन के लिए अनुमति देता है?


12

ऐसा लगता है कि बड़े दो जीपीयू निर्माता लगातार अपडेट किए गए ड्राइवरों को जारी कर रहे हैं जिनके पास यहां और वहां एक छोटा प्रदर्शन बढ़ा है। जब वे एक ही खेल के लिए होते हैं, तो मुझे यकीन है कि यह समय के साथ बढ़ता है।

इस बात को ध्यान में रखते हुए, ऐसा क्यों है कि हम विंडोज या कुछ के एक निश्चित ऐप या संस्करण के लिए एएमडी या इंटेल के सीपीयू ड्राइवरों के बारे में कभी नहीं सुनते हैं?


1
वीटीसी के बारे में: यह अस्पष्ट नहीं है। GPU और (CPU) ड्राइवरों के साथ क्या और क्यों ट्विक हो जाता है, इसके बारे में विशिष्ट तर्क है।
बेन रिचर्ड्स

1
सीपीयू विक्रेता अपडेट जारी करते हैं। देखें, उदाहरण के लिए, downloadcenter.intel.com/… (दूर दाईं ओर फर्मवेयर पर क्लिक करें)
derobert

@derobert - दिलचस्प, स्पष्ट रूप से इंटेल का पेंटियम फियास्को को दोहराने का कोई इरादा नहीं है। हालांकि ये अपडेट प्रोसेसर माइक्रोकोड के लिए हैं , और "सीपीयू ड्राइवर" नहीं हैं। माइक्रोकोड कर्नेल और .exe फ़ाइलों के मशीन कोड की तुलना में निचले स्तर पर निष्पादित होता है ।
चूरा

CPU माइक्रोकोड @sawdust (कम से कम भाग में) x86 के निर्देशों का अनुवाद करने के लिए जिम्मेदार है जो सीपीयू वास्तविक कार्य करता है। तो यह वास्तव में कुछ हद तक ग्राफिक्स ड्राइवरों के समान है। बेशक, इंटेल एनवीडिया की तुलना में शुद्धता के बारे में बहुत अधिक परवाह करता है, इसलिए उनके अपडेट शायद ज्यादातर बगफिक्स हैं।
डेराबोब

जवाबों:


13

सबसे पहले, कभी-कभी ऐसे मामले होते हैं जहां एक चालक पैच जारी किया जाता है जो एक निश्चित सीपीयू के लिए प्रदर्शन को बढ़ा सकता है, या दक्षता बढ़ा सकता है। लेकिन जाहिर है कि आप यह सवाल पूछ रहे हैं क्योंकि यह सिर्फ इतना ही नहीं है। हालांकि, सीपीयू ड्राइवर ऑप्टिमाइज़ेशन जो करते हैं वह अवधारणा में समान है।

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

अब, चूंकि GPU को निर्देशों के सेट को स्वीकार करना होगा और हार्डवेयर में बहुत जटिल गणितीय कार्यों को लागू करना होगा, इसलिए कुछ चीजें होंगी जो इस पाइपलाइन के माध्यम से तेज या धीमी गति से चलने के लिए जानी जाती हैं। डिवाइस के लिए ड्राइवर लिखने का एक हिस्सा डिवाइस को भेजे गए डेटा और निर्देशों की व्याख्या कर रहा है, इसका अनुवाद कर रहा है ताकि डिवाइस इसे समझ सके। जब कोई ड्राइवर ऐसा कर रहा होता है, तो यह डिवाइस को डेटा भेजने के तरीके के बारे में निर्णय ले सकता है ताकि कार्यों को कम से कम समय लग सके। हालाँकि, एक ड्राइवर के पास आम तौर पर इस बारे में बहुत अधिक जानकारी नहीं होती है कि वह किस सेवा में काम कर रहा है। यह कार्यक्रम से प्राप्त सभी एपीआई कॉल ("एक रेखा खींचना", "एक बिंदु को रंग दें", "एक त्रिकोण को शेड करें" आदि) हैं। इसलिए, यह धारणा बना सकते हैं कि यह बहुत अच्छा नहीं है।

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

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

इसलिए मूल रूप से, यह हार्डवेयर के प्रदर्शन को स्वयं नहीं बदल रहा है, बस यह बदल रहा है कि यह हार्डवेयर का उपयोग कैसे करता है, ताकि यह डेटा के एक ही सेट पर अधिक कुशलतापूर्वक और जल्दी से काम कर सके।


ड्राइवर इंजीनियरों के बारे में यह समझना कि कोई गेम कैसे लागू किया जाता है, इससे मुझे आश्चर्य होता है कि क्या कुछ गेमों में एनवीडिया स्प्लैश स्क्रीन सिर्फ विज्ञापनों से अधिक हैं।
लुई वावेरू

2
@ लुईस वे केवल विज्ञापन नहीं हैं। वे इसलिए क्योंकि NVidia कुछ गेम स्टूडियो के साथ विशेष संबंध रखता है और NVidia ग्राफिक्स हार्डवेयर के लिए गेम कोड को ऑप्टिमाइज़ करने के लिए डेवलपर्स को सहायता प्रदान करता है। एएमडी भी ऐसा करता है (कभी-कभी आप एक गेम में एएमडी लोगो देखेंगे), लेकिन एनवीडिया की ऐतिहासिक रूप से बहुत बड़ी उपस्थिति थी।
बेन रिचर्ड्स

इसे फिर से पढ़ना, मुझे लगता है कि यह एक महान जवाब है और चेक मार्क कहां है। काश सभी उत्तर उनकी व्याख्याओं में इतने शिक्षण होते।
लुइस वाएरू

क्या आप इसे ( अधिक संख्या में ) एक और इनाम के लिए एक उदाहरण के रूप में एकीकृत करेंगे?
लुई वाएरू

10

"सीपीयू ड्राइवर" शायद ही कभी मौजूद होते हैं, और निश्चित रूप से लोड करने योग्य मॉड्यूल के रूप में नहीं। मल्टीकोर कंट्रोल या इंटरप्ट हैंडलिंग के कुछ बदलाव के लिए सामयिक "सीपीयू ड्राइवर" की आवश्यकता होगी (जैसे एएमडी दोहरे कोर को पूर्ण उपयोग के लिए एक WinXP ड्राइवर की आवश्यकता थी)। अन्यथा अधिकांश OS को सीधे CPU तक पहुंचने के लिए कॉन्फ़िगर और निर्मित किया जाता है। यदि कोई समस्या प्रकट होती है और गंभीर है, तो कर्नेल कोड को पैच किया जाता है और कर्नेल अपडेट जारी किया जाता है।

जीपीयू अब केवल परिधीय नहीं हैं; वे सह-प्रोसेसर में विकसित हुए हैं। "GPU ड्राइवर" केवल डिवाइस एक्सेस प्रदान नहीं करता है, वे ड्राइवर में पैक किए गए GPU के लिए प्रसंस्करण एल्गोरिदम (यानी ग्राफिक्स उपप्रोग्राम) शामिल हैं। इन "ड्राइवरों" का आकार एक सस्ता / सुराग है। यह इन एल्गोरिदम / उपप्रोग्राम हैं जिन्हें सुधारा जा रहा है।


2
यह बताता है कि मेरे कार्ड के लिए ड्राइवर डाउनलोड अब 200 एमबी से अधिक क्यों हैं।
लुई वावरू

मुझे वास्तव में संदेह है कि उन ड्राइवरों में 200 एमबी मूल्य का कोड है। मुझे आश्चर्य होगा अगर यह इन सभी एल्गोरिदम के बारे में एमबी के एक मुट्ठी भर से अधिक था। >।>
user541686

1
@ मेहरदाद ने जिज्ञासा से बाहर आते हुए Nivida के ड्राइवर के लिए इंस्टॉलर EXE को 7-ज़िप से खोला। प्रदर्शन.ड्राइवर फ़ोल्डर 147 एमबी आकार का है, एक एक्सई है जो 31 एमबी है, 660 केबी से ऊपर की हर दूसरी फाइल एक डीएलएल है।
स्कॉट चैंबरलेन

@ पता: यह निश्चित रूप से वास्तविक कोड वाली अधिक फ़ाइलों का एक संग्रह है । मुझे उम्मीद है कि वास्तविक फाइलें मेगाबाइट्स का एक मुट्ठी भर होना चाहिए ... modulo किसी भी संसाधन वे शामिल हो सकते हैं, जो कोड नहीं हैं।
user541686

0

यह केवल ड्राइवर नहीं है, यह स्वयं GPU है। एक GPU विभिन्न प्रकार की गणनाओं (जैसे एफएफटी) और मेमोरी हेरफेर में विशेषज्ञता प्राप्त है। यह सामान्य दिए गए सीपीयू की तुलना में अधिकतर दिए गए कार्यों पर समानांतर काम कर सकता है और इसे अधिक प्रभावी बना सकता है।

चल रहे कार्यक्रमों के बेहतर ज्ञान के साथ आप इस कार्यक्रम के लिए मेमोरी हेरफेर या गणना प्रक्रियाओं का अनुकूलन कर सकते हैं। GPU गणना करने और मेमोरी मैनिपुलेशन करने के तरीके में बहुत पारंगत है, इसलिए सही फर्मवेयर या ड्राइवर को अभी भी लिखना होगा। ;) सुधार के लिए बहुत जगह है।

अधिकांश अन्य उपकरण इसके उपयोग में बहुमुखी नहीं हैं। पीसी पर अधिकांश हार्डवेयर में इसे चलाने के लिए चश्मा होता है, प्रोटोकॉल का पालन करना होता है, इसलिए ड्राइवर को अनुकूलित करने की आवश्यकता नहीं होती है।

ए, सीपीयू के बारे में भूल गया। > _ <CPU को ऑप्टिमाइज़ किया जा सकता है। अधिकांश नए सीपीयू मॉडल में प्रोग्राम करने योग्य फर्मवेयर है, लेकिन प्रदर्शन को बढ़ावा देने के प्रयास के लायक नहीं है। इसका उपयोग केवल हार्डवेयर बिल्ड प्रक्रिया में त्रुटियों को ठीक करने के लिए किया गया था।


"अधिकांश नए सीपीयू मॉडल में एक प्रोग्रामेबल फर्मवेयर है," कृपया समझाएं।
टिम
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.