Shader Cache: التعريف وكيف يؤثر على أداء الألعاب

في كثير من الأحيان سترى من بين الملفات المؤقتة للحذف منها Windows أو للحصول على مساحة في ما يسمى بذاكرة التخزين المؤقت لتظليل DirectX أو Shader Cache. إذا كنت قد تساءلت يومًا عن ماهية هذه اللعبة ولماذا ينخفض ​​أداء الألعاب عند حذفها ، فما عليك سوى قراءة هذا المقال.

وحدات معالجة الرسومات (GPU) هي معالجات مثل وحدات المعالجة المركزية (CPU) ، لكنها مختلفة من حيث أن توازيها موجه نحو الخيط. هذا هو السبب في أن المعالج الرسومي من النوع TLP بينما المعالج المركزي من النوع ILP. لهذا يجب أن نضيف أنه في حين أن سلاسل التنفيذ في الرسم البياني ليست موجهة إلى العمليات ولكن إلى العناصر الأولية الرسومية أو البيانات.

شادر ذاكرة التخزين المؤقت

بمعنى آخر ، كل مثلث أو بكسل أو جزء له برنامج تظليل خاص به لكل مرحلة من مراحل خط الأنابيب ثلاثي الأبعاد. وهو مكتوب بلغة عالية المستوى ، على سبيل المثال HLSL إذا كنا نتحدث عن DirectX أو GLSL إذا كنا نتحدث عن OpenGL أو Vulkan. على الرغم من وجود بعض الأنظمة الحصرية أيضًا ، مثل PSGL الخاص بـ SONY بلاي ستيشن لوحات المفاتيح. حسنًا ، يجب تجميع هذه البرامج ، وبالتالي ، تمريرها من التعليمات البرمجية المصدر إلى النظام الثنائي.

ما هو شادر كاش؟

شادر ذاكرة التخزين المؤقت كود

تأتي المشكلة عندما ، على عكس ما يحدث مع وحدات المعالجة المركزية حيث تكون جميعها x86 ، في حالة وحدات معالجة الرسومات ، فإن مجموعة السجلات والتعليمات ليست شائعة ، ليس بين العلامات التجارية ، ولكن أيضًا بين بنيات نفس العلامة التجارية. هذا يعني أنه يجب تجميع رمز التظليل أثناء اللعب ، مما يتسبب في تأتأة ومشاكل في الأداء. لذلك ، يتم تخزين الملف الثنائي الذي تم إنشاؤه في ملف ، عند تحميل اللعبة مرة أخرى ، سيتم إعادة تحميله على ذاكرة الفيديو لبطاقة الرسومات ، والتي نعرفها باسم ذاكرة التخزين المؤقت للتظليل أو ذاكرة التخزين المؤقت للتظليل.

لذلك إذا قمنا بتحديث بطاقة الرسومات الخاصة بنا ، فسيتعين إنشاء هذه لكل لعبة من ألعابنا مرة أخرى ، إذا قمنا بحذفها من محرك الأقراص الثابتة أو SSD أيضًا. علاوة على ذلك ، هذا هو أحد الأسباب التي تجعل من غير الجيد الحكم على بطاقة الرسومات عندما نلعب لعبة للمرة الأولى. خاصة إذا أردنا قياس أدائهم المعتاد.

تشغل ذاكرة VRAM أيضًا مساحة

ذاكرة التخزين المؤقت شادر لوحة التحكم NVIDIA

وحدة معالجة الرسوميات‏:‏ من بطاقة الرسومات الخاصة بك فقط إلى النظام رامات من خلال واجهة PCI Express واستخدام وحدة DMA الخاصة بها ، لذلك سيتم تحميل ذاكرة التخزين المؤقت للتظليل جنبًا إلى جنب مع المعلومات المرئية اللازمة لتكوين المشهد من وحدة التخزين إلى ذاكرة الوصول العشوائي ومن ذاكرة الوصول العشوائي إلى ذاكرة الفيديو. على الرغم من أنه باستخدام DirectStorage ، من المتوقع أن تتمكن أجهزة الرسومات من الوصول إلى SSD مباشرة ، مما يقلل من زمن الوصول ومشكلة الاضطرار إلى الاعتماد على وحدة المعالجة المركزية‏:.

تم تطوير العديد من الألعاب بشكل جيد وتشغل ذاكرة التخزين المؤقت للتظليل مساحة صغيرة ، لكن البعض الآخر ليس كثيرًا وينتهي به الأمر إلى شغل قدر كبير من ذاكرة الرسومات. ما يعني أنه إذا كان للسائق حد مرتبط أو اللعبة نفسها ، فإننا نجد فجأة أن التجميعات الجديدة تحل محل القديمة وتعود مشاكل الأداء الأولية.

على أي حال ، يجب أن نضع في اعتبارنا أنه إذا كانت اللعبة التي نلعبها تتطلب مساحة في ذاكرة الوصول العشوائي للفيديو ، فستعطي الأفضلية لعرض الإطار الحالي. لذلك سوف يسعى إلى استرداد ذاكرة التخزين المؤقت للتظليل المخزنة في ذاكرة النظام مؤقتًا. تذكر أيضًا أن عمليات التفريغ إلى وحدة التخزين يتم إجراؤها بشكل مستمر ، لأنه بمجرد إنشاء تظليل بدائي رسومي ، لن يكون من الضروري القيام بذلك مرة أخرى.

تتبع الشعاع وذاكرة التخزين المؤقت

في تتبع الشعاع ، السؤال الأكثر شيوعًا عن وحدة معالجة الرسومات هو من النوع المنطقي. هل يتقاطع هذا الشعاع مع هذا الرسم البياني البدائي؟ الجواب ليس دائمًا نعم ، وبالتالي ، هناك شرط سيحدث أو لا يعتمد على الظروف. لذلك ، عند تنفيذ هذا التظليل لأول مرة ، سيكون من الضروري تجميع وإنشاء تظليل ذاكرة التخزين المؤقت لجميع النتائج الممكنة.

شادر مخبأ على لوحات المفاتيح

XSX و XSS و PS5 Consolas

ستحتوي وحدة التحكم في ألعاب الفيديو دائمًا على نفس المكونات ، بدءًا من النموذج الأول الذي يغادر المصنع إلى الأخير. على الرغم من مرور عدة سنوات ، فإن مواصفاتها لن تتغير. على سبيل المثال ، يمكنك اليوم العثور على طرز أقدم من أقدم بطاقة رسومات. تتمثل إحدى طرق الاستفادة من ثبات أجهزته في الاستفادة مما يسمى بـ shaders تم تجميعه بالفعل في تثبيت اللعبة. هذا يجعل من غير الضروري إنشاء ذاكرة تخزين مؤقت تظليل لكل لعبة ، ولكنه أيضًا سيف ذو حدين.

على سبيل المثال ، إذا كنت تريد إنشاء وحدة تحكم أكثر قوة ومتوافقة مع الإصدارات السابقة ، فلديك الخيارات التالية:

  • قم بتصدير ISA إلى وحدة معالجة الرسومات للنظام الجديد ، مما يجعلها تعمل كمجموعة شاملة من النظام القديم. هذا ما فعلته AMD في PlayStation 5 و Xbox Series بهندسة RDNA 2 لتشغيل ألعاب الجيل السابق المصممة لـ GCN بسلاسة.
  • دمج جميع الدوائر الرسومية للنظام السابق في النظام الجديد. هذا شيء فعلته Nintendo على وحدات التحكم الخاصة بها حتى 3DS و SONY مع PlayStation الثاني وبعض طرز الثالثة.

على مستوى المحاكي ، ما يتم القيام به في كثير من الحالات هو أخذ تظليلات مجمعة بالفعل والقيام بعملية عكسية ، وإنشاء رمز وسيط يمكنه إنشاء Shader Cache الذي تم إنشاؤه للعمل مع بطاقة الرسومات الخاصة بك. ومع ذلك ، فهو ليس علمًا دقيقًا وقد تواجه بعض الثغرات الرسومية عند تشغيل الألعاب.

تحسينات لمصنعي وحدة معالجة الرسومات

منظمة لوفليس هوبر

يبلغ قطر كلاً من NVIDIA و AMD عادةً ما تتضمن تحسينات في أحدث برامج التشغيل لمعظم -حافة ألعاب. هذه لا تشمل فقط الإعدادات المثلى لأداء أعلى ، ولكن أيضًا ذاكرة التخزين المؤقت للتظليل المحسّنة بالفعل لكل لعبة ومواصفات أفضل من اللعبة الأساسية. وهو أن كلا المصنّعين مهتمان ببطاقات الرسومات الأكثر تقدمًا التي تتمتع بأقصى أداء ممكن في أقوى لعبة على الإطلاق موجودة اليوم.

لذلك يترك هؤلاء المال لاستوديوهات التطوير المختلفة ، الذين يقومون بتحسين برامج shader لبعض بنى الرسومات وإنشاء ذاكرة تخزين مؤقت تظليل تعمل بشكل أفضل من تلك التي تأتي مع اللعبة الأساسية. يتم ذلك لتشجيع شراء نماذج جديدة وإنشاء برنامج تقادم ، وهو أمر ضروري ليكون هناك تدفق للاستهلاك يدعم الصناعة. هذا هو السبب في أن العديد من الألعاب التي بالكاد تحتوي على أي تغييرات مرئية على أقساطها السابقة ينتهي بها الأمر بأسوأ أداء.