क्या कार्यक्रमों के बीच साझा करने के लिए कोई प्रदर्शन लाभ है?


14

OpenGL आपको कई कार्यक्रमों के बीच एक ही shader साझा करने की अनुमति देता है। थोड़ी मात्रा में मेमोरी और एक शैडर हैंडल को सहेजने के अलावा, क्या ऐसा करने के लिए कोई GPU-साइड प्रदर्शन लाभ हैं?

जवाबों:


3

मुझे संदेह है कि GPU-पार्श्व प्रदर्शन लाभ है।

जब आप उदाहरण के लिए एक कार्यक्रम में एक सामान्य shader को बांधते हैं, तो एक कुशल कार्यान्वयन उस shader और उस कार्यक्रम में अन्य shaders के बीच अप्रयुक्त विशेषताओं को निकालने में सक्षम होना चाहिए और संभवतः परिणामस्वरूप shader तर्क को भी सरल कर सकता है। बेशक, यह हाथ से चलने वाले शेडर संयोजन पर कोई वास्तविक लाभ नहीं है, लेकिन यह जटिलता / दहनशासक को प्रबंधित करने में मदद करता है, और संभवतया चालक द्वारा किए जाने वाले संकलन की संख्या को कम करता है।

हालांकि, अक्षम ड्राइवर-कंपाइलर कार्यान्वयन को रोकने के मामले में ऐसा करने में कमियां हो सकती हैं। और वहाँ कुछ बाहर हैं, जाँच करें: http://aras-p.info/blog/2010/09/29/glsl-optimizer/ बस कुछ सरल चीजों के लिए कि कुछ कार्यान्वयन गलत हो सकते हैं।

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