هناك بعض النقاط التي يجب مراعاتها لتحديد ما إذا كانت سلاسل عمليات اللعبة مستخدَمة ومجدوَلة بشكل مناسب لتحقيق أفضل أداء.
- تحديد وتيرة الإطارات
- تعدد سلاسل العمليات وموازاة سلاسل العمليات
- تحديد نواة وحدة المعالجة المركزية (CPU)
تعدد سلاسل العمليات
تستخدم العديد من الألعاب ومحرّكات الألعاب تعدد سلاسل العمليات لتقسيم عمل وحدة المعالجة المركزية (CPU) إلى مهام منطقية، يمكن تشغيلها بشكل مستقل إلى حد ما. أحد الإعدادات النموذجية هو سلسلة عمليات اللعبة للإدخال ومنطق اللعبة، وسلسلة عمليات العرض لإعداد الكائنات وإرسالها ليتم رسمها، وسلاسل عمليات العامل للمهام الفرعية الأخرى، مثل الرسوم المتحركة أو الصوت.
ننصح بموازاة سلاسل العمليات للاستفادة من تحسينات الأداء الناتجة عن تعدد سلاسل العمليات. أحد الأمثلة على ذلك هو سيناريو يتم فيه تشغيل سلاسل عمليات اللعبة والعرض بشكل متزامن جزئيًا أو كليًا على نوى مختلفة. لن يكون ذلك ممكنًا دائمًا، كما في الحالات التي تتضمّن تبعيات بيانات تمت مشاركتها؛ ولكن عندما يكون ذلك ممكنًا، قد يؤدي ذلك إلى تقليل وقت وحدة المعالجة المركزية، وبالتالي قد يؤدي إلى زيادة عدد اللقطات في الثانية.
تحديد نواة وحدة المعالجة المركزية (CPU)
أحد العوامل التي تؤثر بشكل كبير في أداء أحمال عمل وحدة المعالجة المركزية (CPU) هو كيفية جدولة هذه الأحمال على النوى. ويمكن تقسيم ذلك إلى مكوّنَين:
- ما إذا كانت سلاسل عمليات اللعبة تعمل على النواة الأنسب لحمل العمل.
- ما إذا كانت سلاسل عمليات اللعبة تنتقل بين النوى بشكل متكرر.
غالبًا ما تستخدم الأجهزة الحديثة بنية تُعرف باسم الحوسبة غير المتجانسة، حيث يكون للنوى مستويات أداء مختلفة:
- تقدّم نواة واحدة أو بضع نوى أفضل أداء، ولكنها تستهلك المزيد من الطاقة. ويُطلق على هذه النوى أحيانًا اسم "النوى الكبيرة".
- تقدّم النوى الأخرى أداءً أقل، ولكنها أكثر كفاءة في استخدام الطاقة. ويُطلق على هذه النوى أحيانًا اسم "النوى الصغيرة".
- اختياريًا: تقدّم نواة واحدة أو أكثر توازنًا بين الأداء والطاقة. ويُطلق على هذه النوى أحيانًا اسم "النوى المتوسطة".
يمكنك التحقق من سلوك سلسلة عمليات وحدة المعالجة المركزية (CPU) ضمن استخدام وحدة المعالجة المركزية (CPU) من خلال تفعيل وحدة المعالجة المركزية (CPU) في إعدادات ملف التعريف عند أخذ تتبُّع. من خلال تكبير قسم من التتبُّع أقل من 200 ملي ثانية، يمكنك عرض العمليات الفردية التي يتم تشغيلها على نوى وحدة المعالجة المركزية (CPU) في جهازك. عادةً ما تتوافق النوى الأصغر مع الفهارس الأصغر (على سبيل المثال، وحدات المعالجة المركزية "0"-"3")، بينما تتوافق النوى الأكبر مع الفهارس الأعلى (على سبيل المثال، وحدات المعالجة المركزية "6"-"7")، وإذا كانت النوى المتوسطة متوفّرة، فستشغل فهارس بينهما (على سبيل المثال، وحدات المعالجة المركزية "5"-"6"). هذا هو العرف الشائع، ولكنّه ليس مضمونًا.
إذا تبيّن لك أنّه يتم جدولة سلاسل عمليات معيّنة على وحدات معالجة مركزية (CPU) لا تلبّي احتياجاتها من الأداء أو الطاقة، ننصحك بضبط تحديد نواة وحدة المعالجة المركزية (CPU) يدويًا لتلك السلاسل.
يمكنك أيضًا ملاحظة ما إذا كانت سلاسل العمليات تنتقل بين النوى. تؤدي عمليات تبديل النوى هذه إلى بعض النفقات العامة الناتجة عن تبديل السياق وفقدان الحالة في ذاكرة التخزين المؤقت/السجلات الخاصة بنواة معيّنة.
يؤدي ضبط تحديد نواة وحدة المعالجة المركزية (CPU) لسلسلة تعليمات إلى توجيه النظام لجدولتها على النواة المحدّدة عندما تكون لعبتك في المقدّمة. هناك عدة عوامل يجب مراعاتها عند إجراء ذلك:
- لا يمكن لبرنامج النظام الأساسي تعديل موضع المهمة بشكل ديناميكي لعوامل وقت التشغيل، مثل التحميل والحد من درجة الحرارة.
قد يؤدي اختبار الأداء على أجهزة مختلفة إلى خصائص أداء مختلفة جدًا، خاصةً إذا كانت الأجهزة تختلف بشكل كبير من حيث السعر أو تاريخ الإصدار.
قد يتم تشغيل حمل عمل معيّن بسهولة على نواة صغيرة في جهاز أحدث أو أكثر تكلفة، ولكن قد يتطلب جهاز أقدم أو أقل تكلفة نواة أكبر للوفاء بالمواعيد النهائية لحمل العمل نفسه.
من خلال فرض تحديد النوى الكبيرة، قد تزيد بشكل غير ضروري من استنزاف البطارية والحمل الحراري.
لهذه الأسباب، من الأفضل بشكل عام تجنُّب ضبط تحديد نواة وحدة المعالجة المركزية (CPU) يدويًا.