تصحيح الأخطاء غير المحتملة للصور المتحركة

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

العرض على نظام التشغيل ChromeOS

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

وبعد ذلك، لا يمكن لبرنامج العرض البدء في عرض الإطار التالي، متسببًا في المزيد من المشاكل. وهذا السيناريو مألوف بالنسبة إلى مطوّري برامج Android للأجهزة الجوّالة، فعندما يتم تشغيل تطبيق على ChromeOS، يكون السياق أكثر تعقيدًا.

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

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

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

أداة تتبُّع رسومات ARC

يتضمَّن نظام التشغيل ChromeOS أداة تحليل توضِّح كيفية امتلاء المخازن المؤقتة من خلال النظام، وعند حدوث عمليات تبديل الذاكرة، ومدى انشغال وحدة المعالجة المركزية (CPU)/وحدة معالجة الرسومات، والإجراءات التي ينفّذها تطبيقك في وقت معيَّن، كما هو موضّح في الصورة التالية:

إعداد المحلِّل

لاستخدام المحلِّل، يجب تشغيل الإصدار M75 أو إصدار أحدث. وللحصول على أفضل النتائج، استخدِم جهاز Intel.

قبل استخدام المحلل، يمكنك إنشاء تطبيقك مع التتبعات. أضف Trace.traceCounter(Trace.TRACE_TAG_GRAPHICS, "Event", <number>); إلى الرمز الخاص بك حيث تريد تضمين التتبع. استخدام Event يبدأ بالبادئة customTrace لا تظهر البادئة في رسالة التتبُّع.

لإعداد المحلل، اتبع الخطوات التالية:

  1. فعِّل وضع مطوّر البرامج.
  2. فعِّل إعدادات Chrome وفعِّل أداة العرض المرئي للمخازن المؤقتة للرسومات من ARC.
  3. الانتقال إلى chrome://arc-graphics-tracing

تشغيل المحلل

  1. اختَر إيقاف عند إيقاف الجهاز غير المهم.
  2. شغِّل تطبيق Android.
  3. عندما يكون تطبيق Android نشطًا مع التركيز على الجهاز، اضغط على Control+Shift+G.

عندما تظهر مشكلة، تظهر نافذة متصفّح منبثقة. استخدِم مفتاحَي W وS للتكبير أو التصغير وتصغير المخطط الزمني.