بسم الله الرحمن الرحيم
Micro stuttering
مشكلة و حلول
ما هو Micro stuttering ؟ ما هى أسبابة ؟كيف نتعرف عليه ؟و كيف نمنعه؟ أسئلة عديدة قد تتبادر إلى أذهان مستخدمي الكمبيوتر وإنا شخصياً كنت أعاني من هذه المشكلة و لكن لم أكن استطيع تميزها إلا بعد أن سمعت عنها الكثير و أصبحت أقارن بين أداء الألعاب على كروت الشاشة المختلفة .فلنبداء على بركة الله.
Micro stuttering هو مصطلح يستعمل لوصف عيب من عيوب كروت الشاشة تكون فيه المدة اللازمة لتصبير أي إطار تختلف اختلاف كبير عن الإطار الأخر بمعنى أخر ان هناك اختلاف كبير بين زمن التصيير لكل إطار على حدى
على سبيل المثال
إطار رقم 1 20 ملي ثانية
إطار رقم 2 55 ملي ثانية
إطار رقم 3 10 ملي ثانية
إطار رقم 4 60 ملي ثانية
إطار رقم 5 15 ملي ثانية
نلاحظ في المثال السابق ان هناك تذبذب كبير بين زمن التصيير لإطار و أخر هذا الفرق قد يصل بعملية حسابية بسيطة 60-10= 50 ملي ثانية و هو زمن ليس بالقصير
تسمى المدة اللازمة لتصير الإطار frame time هذا المصطلح يعتبر جديد في عالم الكروت و لكنه مهم جداً و هو ينعكس بشكل مباشر على نعومة و سلاسة الصورة المعروضة على الشاشة و مدي استمتاع المستخدم بالألعاب من حيث جودة الصورة وسرعة اللعبة
هذا فيديو يوضح هذة الظاهرة عن كثب لاحظو اخواني ان الصورة بسرعة 30 fps على كرت واحد اكثر نعومة من 60 fps على كرتين
بناء على التعريف السابق فأن Micro stuttering يمكن ان يحدث في اي كرت شاشة لأنة لا يحتاج إلى مسببات خاصة لحدوثه و لكن لحسن الحظ فان هذا العيب يميل للظهور بشكل واضح في الكروت ثنائية النواة و في تعدد الكروت سواء في وضعية SLI او crossfire ومن الأمثلة الشهيرة للكروت التي يحدث بها هذا العيب الكروت آلاتية
Gtx 295 Geforce AMD HD 5970
GTX 590 Geforce AMD HD 6990
Gtx 460 SLI Geforce CF AMD HD 7970
القائمة السابقة على سبيل المثال لا الحصر فالعديد من الكروت ثنائية النواة تظهر هذا العيب .الخبر المفرح هو ان أعين بعض الناس قد تكون اقل حساسية لاكتشاف هذه المشكلة مع ان ذلك يقابله ان البعض الاخر لديهم حساسية زائدة لالتقاط هذه المشكلة إلى درجة تمنعهم من الاستمتاع بالألعاب عند وجودها.
ما هو السبب الرئيسي لل Micro stuttering
__________________________________________
يرجع السبب الرئيسي لهذه المشكلة إلى الطريقة التي تتم بها معالجة معلومات الفيديو في وضعية تعدد الكروت او الكروت المزدوجة النواة على السواء فهي تقوم على طريقة تسمي Alternate-Frame Rendering AFR
او( تصيير الإطارات بالتبادل)
حيث يتم تقسيم عدد الإطارات بالكامل إلى قسمين القسم الأول هو الإطارات فردية العدد و الثاني هو الإطارات زوجية العدد و يتم توزيع القسمين بالتساوي على النواتين او الكرتين مثال ذلك ان لدينا 30 إطار
Frame1 frame3 frame5--------------------------------------------frame15 to card 1
Frame 2 frame4 frame6--------------------------------------------frame14 to card 2
هذه الطريقة هي الطريقة الوحيدة حتى الآن و المستخدمة من قبل انفيديا و AMDفي تعدد الكروت و الكروت الثنائية
المشكلة تحدث دائماً لان النواتين او الكرتين عادتاً مايكون هناك اختلاف طفيف في سرعتهم و النتيجة ان احدهم يكمل عملة أسرع من الأخر فيكون هناك تذبذب في frame time فيظهر التقطيع الخفيف بغض النظر عن معدل الإطارات الذي يحسب عن طريق FRAPS
بخصوص تشخيص هذه المشكلة فإنها غالباً تكتشف بالملاحظة البصرية و لكن هذا يجعل منها أمر غير موضوعي و تعتمد على حساسة العين البشرية و تختلف من شخص إلى أخر
لذلك فالطريقة الأكثر دقة هي عن طريق قياس frame time تتم هذه الطريقة باستخدام تجهيزات من برامج و عتاد حيث يتم تسجيل مقطع من زمن اللعبة المراد اختبارها بكرت الشاشة عن طريق جهاز حاسوب مجهز لعملية الالتقاط و بعد ان تتم هذه العملية يتم تحليل هذا المقطع تحليل دقيق حيث يتم حساب المعدل الفعلي للإطارات في الثانية وframe rate
و معلومات اخرى كثيرة تفيد في تقييم كرت الشاشة و تشخيص عيوبه
لاحظوا الصورة لتوضيح طريق تشغيل هذا النظام
و عن طريق عمل رسم بياني لأزمنة الإطارات في مدة معين من الزمن نستطيع ان نحصل على شكل مميز لأداء كل كرت و عن طريق هذا الشكل نستطيع اكتشاف حجم مشكلة Micro stuttering في كل كرت و مقارنتها بالكرت الأخر
كلما زادت سماكة الخط في الرسم البياني كان هذا مؤشر على الاختلاف الكبير في frame time الامر الذي يودي الى ظهور مشكلة Micro stuttering
و كلما كان الخط رفيع و غير سميك دل ذلك على انتظام frame time و قلة احتمالية ظهور Micro stuttering
كيفية منع او تخفيف مشكلة Micro stuttering
___________________________________________
في بداية الأمر كانت شركات إنتاج البطاقات الرسومية تحاول تجاهل هذه المشكلة و لا تعيرها اي اهتمام و لكن مع ازدياد شكوى المستخدمين منها و تعالي أصواتهم قامت شركة انفيديا ابتداء من كروت geforce gtx 6xx بتقديم تقنية جديدة في كروتها تسمى
"Kepler hardware based frame rate metering"
هذه التقنية تقوم بتتبع frame time و تنظيمه بحيث تمنع الاختلاف الكبير فيه و قد نجحت هذه التقنية في تخفيف Micro stuttering بشكل كبير في معالجات كيبلر سوا كان ذلك في الكروت الثنائية مثل 690 او في وضعية SLI
اما في ما يتعلق بشركة AMD فهي إلى الآن لم تتطرق إلى هذه المشكلة و لكن يقال أنها بعد الكثير من الشكاوى وعدت بحل هذه المشكلة في كروت الجيل القادم كما يتوفر برنامج مجاني يسمى RadeonPro يقوم بتخفيف هذه المشكلة عن طريق بروفيلات خاصة بكل لعبة و نتائج هذا البرنامج ممتازة إلا انه يقدم حل على المستوى البرمجي و ليس العتادي
هذا الرسم البياني يبين اداء كرتين من AMD في وضعية crossfire بدون برنامج RadeonPro في لعبة borderland 2
اداء نفس الكرتين بعد استخدام برنامج RadeonPro في نفس اللعبة
و اعتقد ان هذه المشكلة في طريقها إلى الحل بعد اعتراف شركات إنتاج الكروت بها و تقدم وسائل و طرق الاختبار بحيث أصبحت مشكلة يمكن قياسها معملياً و لا يمكن إنكارها
في النهاية أتمنى ان ينال هذا الجهد المتواضع رضاكم و أمال منكم تصويبي ان أخطأت و إثراء الموضوع بردودكم القيمة
مسك الختام الصلاة على خير الأنام
سيدنا محمد صلى الله علية و سلم
المراجع:
Upgrading and Repairing PCs 17th Edition
www.nvidia.com
www.overclock.net
www.tweakguides.com
en.wikipedia.org
www.anandtech.com
www.pcper.com
www.tomshardware.com
radeonpro.info
المفضلات