عرض مشاركة واحدة
قديم 01-04-2019, 03:19 PM   #1
تاريخ التسجيل: Feb 2019
المشاركات: 1,010
التقييم: 10
تاريخ التسجيل: Feb 2019
المشاركات: 1,010
التقييم: 10
افتراضي الفرق بين Single Thread و Multi Threaded وأهمية المعالج المركزي بالألعاب الحديثه _2

الفرق بين Single Thread و Multi Threaded وأهمية المعالج المركزي بالألعاب الحديثه _2


الفرق Single Thread Multi Threaded

الشيء الأكيد عن مفهوم ST بالألعاب أن عملية معالجة الكود ستكون من خلال خيط معالجه واحد و في كل مره ستحتاج لمعالجة نفس نوع الكود أو
إتمام نفس تلك العمليه . و هذا يعني بكل وضوح أنه من الممكن إنشغال جميع خيوط المعالجه بمعالجة كود واحد بالمره .
بإختصار شديد ST هي عملية معالجه فرديه لأمر واحد فقط و لكن من الممكن إنشغال أي عدد من خيوط المعالجه حتى و لو كان معالج I7-6950X
في تنفيذ امر واحد بكل خيط من خيوط معالجته و لكن كل امر سيختلف عن الأمر الآخر .
-
أما بالعاب MT فمن الممكن أن تتشارك خيوط المعالجه في تحليل نفس كود العمليه و نفس الأمر بالضبط و كل خيط من خيوط
المعالجه يستخرج النتائج المطلوبه في الفتره الزمنيه المُقدره له ,
و هكذا تسمح بإنشغال أكبر عدد من خيوط المعالجه في تنفيذ بعض الأوامر الفرعيه أو بمعنى آخر فهي مستعده لتنفيذ اوامر مختلفه في نفس الوقت .
-
ماذا لو كنا نستطيع تحقيق 100FPS مع لعبه ST ثم من جديد تم برمجة اللعبه مره آخرى لتصبح MT ؟ فحينها لو كان لدينا العدد الكافي من خيوط
المعالجه سنتمكن من زيادة الأداء ربما و إلى الضعف . -
-
ستتنوع شكل النتائج من لعبه لأخرى حسب طريقة برمجتها و كيف قُدرَ لها أن تستفيد من قدرات المعالج المركزي سواء من خلال قواة نواه المعالج ,
تعدد أنوية المعالج , أو من خلال تردد المعالجه الأسرع لأنوية المعالج .
-
إذن لماذا لا تخرج جميع الألعاب Multi Threading سنتسائل ؟
بالمقام الأول كي يتم برمجة الألعاب للقدره على تنفيذ نفس عملية المعالجه من خلال اكبر عدد من خيوط المعالجه ستتطلب فتره زمنيه طويله من قبل
مطورين الألعاب و هذا الأمر لن يلعب في صالح العامل الزمني بالنسبة لعملية التطوير و الإنتاج ,
أما السبب الآخر في عدم القيام بذلك انه احياناً غير ممكن إطلاقاً :
تخيل نفسك امام معادله رياضيه , بعض المعادلات تحتاج ان تصنع لها هامش في اقصى يسار الصفحه , لا يصح عندما نصل لنصف الهامش ان
تستكمل حل هذه المعادله في صفحه أخرى و تصنع لها جدول آخر !,
-
في الواقع احياناً ممكن , و لكن احيانا غير ممكن إن كانت هذه المعادله ستتطلب بعض المعطيات التي تتواجد ببدايه هامش نفس الصفحه ,
و لابد من إستدراج نتائجها بداخل نفس الهامش .
لكن هذه المشكله قد تتسبب لك في إنتهاء الهامش لنهايته قبل أن تنهي حل المعادله , بالتالي ستختنق الصفحه بالكامل بالمعلومات و ستتكدث كي تنهي
حل تلك المعادله ,
المعادله هي عملية المعالجه او تحليل الكود و الهامش هو خيط المعالجه و الصفحه هي النواه و اختناقها بالمعلومات بنسبة %100 هي لحظات تجميد الأداء .
-
فإذا نظرنا في نتائج المثال السابق سنجد تفوق لمعالج RYZEN 1600X في لعبه مثل HITMAN 2016 و في لعبة GTA V , بينما تتغير حالة الفوز في بعض
الألعاب الأخرى و بدون شك ستتفوق نواة معالج KABYLAKE في العدد الأكبر من الألعاب بسبب فرق سرعتها الذي إتضح انه تقريباً %15 بحساب قوة IPC .
-
لماذا لا تخرج جميع الألعاب بنفس الشكل الذي ظهرت عليه بعض الألعاب مثل GTA V أو HITMAN !


يتبع

الفارس غير متواجد حالياً   اقتباس