GPU को गेम विशिष्ट ड्राइवरों की आवश्यकता क्यों है?


31

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

जवाबों:


31

चालक विकास के कुछ वर्षों के साथ किसी के रूप में, मैं इसे दो अलग-अलग मुद्दों के रूप में देखता हूं।

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

एक वास्तविक गेम (या बेंचमार्क, या ड्राइवर के लिए कुछ अन्य उपयोग का मामला, जैसे वीडियो डिकोडिंग) आता है, जो ड्राइवर में एक अड़चन को उजागर करता है। तुम जाओ, समझ से बाहर कैसे चीजों को सुचारू बनाने के लिए और उस मामले का उपयोग तेजी से करें। आप आसानी से रिपोर्ट कर सकते हैं कि गेम XYZ 27.3% तेज है, लेकिन वास्तव में हर एप्लिकेशन जिसने उपयोग के मामले (जैसे, गतिशील बनावट अद्यतन) को तेज कहा है।

उसके बाद बदसूरत पक्ष, वास्तविक प्रति-एप्लिकेशन अनुकूलन, जिसमें ड्राइवर यह पता लगाता है कि क्या एप्लिकेशन चलाया जा रहा है (या कौन सा shader संकलित किया जा रहा है) और कुछ गैर-जेनेरिक करता है। इस के बहुत सारे प्रचारित मामले हैं, जहां, उदाहरण के लिए, 3 डी निष्पादन योग्य का नाम बदलने से अचानक परिणाम बदल जाते हैं।

मुझे लगता है कि इस प्रकार के अनुकूलन हर किसी के समय की बर्बादी हैं - आप बेंचमार्क के मामले में अपने ग्राहकों से झूठ बोलते हैं, और आप उस तरीके को बदल सकते हैं जिस तरह से एक shader व्यवहार करता है जो डेवलपर वास्तव में चाहता है। मुझे एक मामला याद आता है, जहां एक शैडर को टेक्सचर लुक से इन-शैडर गणना (जो केवल निर्माता के हार्डवेयर के लिए काम करता था) में बदल दिया गया था, जो करीब था, लेकिन बिल्कुल समान परिणाम नहीं था, और डेवलपर ने कहा कि यह कानूनी नहीं था अनुकूलन।


2
+1 और यह स्वीकृत उत्तर होना चाहिए; यह सटीक स्थिति का वर्णन करने और अंदर के दृष्टिकोण से बहुत अच्छा काम करता है। मुझे लगता है कि मैं उस मामले को जानता हूं जिसका आपने उल्लेख किया है - स्पेक्युलर गणना, शायद? ;)
मैक्सिमस मिनिमस

14

एक आदर्श दुनिया में वे नहीं करेंगे।

हालांकि यह एक आदर्श दुनिया नहीं है, इसलिए खेल-विशिष्ट प्रदर्शन में सुधार निम्नलिखित में से एक या एक से अधिक हो सकता है (एक थकाऊ सूची होने का इरादा नहीं):

  • खेल राज्यों एक्स, वाई और जेड सेट के साथ ए, बी और सी के संयोजन का काम कर रहा है। चालक इसके आधार पर धारणा बना सकता है और चीजों को अधिक इष्टतम कोड पथ पर धकेल सकता है।

  • खेल कभी भी संचालन I, J या K नहीं करता है। फिर से, चालक यह मानने में सक्षम होने के आधार पर अधिक इष्टतम कोड पथ चुन सकता है कि ये ऑपरेशन कभी नहीं किए गए हैं।

  • खेल कुछ चीजें थोड़े (या इतने थोड़े नहीं) में अपनाता है। ड्राइवर यह जानता है, कॉल को स्वीकार करता है, और उन्हें कुछ (उम्मीद!) समकक्ष में परिवर्तित करता है जो इसके साथ बेहतर काम करेगा।

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

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


1
मुझे बताया गया है कि GPU ड्राइवर लेखक कभी-कभी लोकप्रिय खेलों के लिए शेड्स पर नज़र रखेंगे और अपने हार्डवेयर के लिए अनुकूलित अपने स्वयं के संस्करण लिखेंगे, जो ड्राइवर मूल छाया के लिए चुपचाप स्थानापन्न करेगा।
नाथन रीड

9
@NathanReed एक बार, यह उससे आगे बढ़ गया। जब अनीसोट्रोपिक फ़िल्टरिंग और बनावट-संपीड़न महंगा था, तो जीपीयू कंपनियां अंत उत्पाद की दृश्य-गुणवत्ता को कम करने के लिए अपने रास्ते से बाहर चली जाएंगी, जब यह वास्तविक समय में चलता था, तो इसे सस्ते मॉनिटर के साथ किसी को भी चेतावनी दिए बिना तेजी से बनाने के लिए। खेल बहुत बुरा लग रहा था। वे प्रिंटस्क्रीन में कॉल को भी रोकते हैं, और तस्वीर के लिए एक पूर्ण-गुणवत्ता रेंडर करते हैं।
१०:१४ पर नॉरगार्ड

8
GPU निर्माता भी लोकप्रिय बेंचमार्क पर धोखा देना पसंद करते हैं। मुझे एक पीसी पत्रिका से तुलना बेंचमार्क याद है, जहां वे एक ही सिस्टम पर समान सेटिंग्स के साथ दो बार एक ही बेंचमार्क चलाते थे। लेकिन एक बार उन्होंने बेंचमार्क के निष्पादन योग्य का नाम बदल दिया ताकि ड्राइवर इसे पहचान न सके। उत्सुकता से, नामांकित निष्पादन योग्य पर स्कोर बहुत खराब था - एटीआई और एनवीडिया कार्ड दोनों के लिए।
फिलिप डे

8

गेम डेवलपर्स जीपीयू की सीमा को आगे बढ़ाते हैं। हम एक खेल और एक खेल इंजन के लिए एक सादृश्य बना सकते हैं। खेल की आवश्यकताएं जितनी अधिक उन्नत होंगी, उतना ही उन्नत खेल इंजन को इसका समर्थन करने की आवश्यकता होगी। ग्राफिक्स कार्ड के साथ भी ऐसा ही है।

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

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

ड्राइवर अपडेट रिलीज नोट्स में विशिष्ट गेम को शामिल करने के पीछे तर्क पीआर है। यह न केवल दिखाता है कि कार्ड निर्माता एक्स गेम वाई के साथ वास्तव में अच्छी तरह से काम करने जा रहा है, लेकिन यह दर्शाता है कि गेम वाई पहले से भी बेहतर होने वाला है।


6

यह प्रशंसनीय है कि गेम डेवलपमेंट टीम जीपीयू ड्राइवर बग में भाग गई जो कि ड्राइवर बग को ठीक नहीं करने पर गेम को सही ढंग से काम नहीं करने का कारण होगा ।

यह कभी-कभी मार्केटिंग नौटंकी भी है । उदाहरण के लिए, एटीआई / एएमडी ने हाल ही में अपने नए जीपीयू के साथ डर्ट 3 की एक कॉपी को बंडल किया और इस गेम पर 3 मॉनिटर के साथ आईफिनिटी के साथ खेलने के विचार को आगे बढ़ाया।

तो यह वहाँ सहजीवन का एक सा है।

GPU विक्रेता: अरे! यह नई सुविधा! कोई इसका उपयोग नहीं कर रहा है!

गेम डेवलपर: हम इसका इस्तेमाल कर सकते हैं! हमारे गेम को अपने GPU के साथ बंडल करें जो इस सुविधा का उपयोग करता है?

GPU विक्रेता: नर्क!


1

सच्चाई यह है कि GPU को गेम-विशिष्ट ड्राइवरों की आवश्यकता नहीं है

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

यह सब बहुत सुंदर है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.