
المعالجات المركزية تتقهقر بقوة خلف المعالجات الرسومية خلال 2019
مع صدور بطاقات RTX من NVIDIA، استيقظ الجميع علي وقع الحقيقة الصادمة! لا يوجد لدينا معالجات مركزية CPUs كافية لتشغيلها! فتشغيل بطاقة 2080Ti أو Titan RTX، علي دقة وضوح 1080p في أغلب الألعاب يجعلها تختنق بمنتهي العنف، ولا تعطي أداء زائدا عن أي من بطاقات ما قبلها من أجيال. لقد تقهقرت قوة المعالجات المركزية الي حد أن البطاقات الرسومية العليا صارت الآن أقوي منها!
حتي مع استعمال اقوي معالج متاح للألعاب: وهو i9 9900K، لا نزال غير قادرين علي الحصول علي أداء مرتفع علي 1080p! وحتي مع استعمال معالجات بأنوية كثيرة، مثل i9 7900X أو Thread Ripper، فان النتيجة لا تتغير!
وهذا مع بطاقة واحدة فقط! تشغيل بطاقتين في وضعية SLi هو أمر مستحيل علي 1080p، فالأداء لا يزيد الا بصعوبة عن أداء أي بطاقة واحدة من الجيل السابق حتي علي 1440p.

كل بطاقات 1080Ti و 2080 و 2080Ti تحقق أداء متساويا في Battlefield 1 علي 1080p، والسبب أن المعالج المركزي نفسه لا يستطيع تقديم أداء أعلي من ذلك
بل إن دقة 1440p نفسها معرضة لنفس الشئ في العديد من الألعاب، فتجد أداء بطاقة 2080Ti لا يزيد كثيرا عن 1080Ti علي 1440p في تلك الألعاب، و الفارق لا يزداد أو يظهر بوضوح الا علي دقة عرض 4K!
والأمر مفزع حقيقة، فهذا يعني أن اللاعب الذي يمتلك شاشة بدقة عرض 1080p، لن يستفيد من أي بطاقة أعلي من 1080Ti، حتي لو امتلك أفضل المعالجات المركزية! وقريبا لن يجد اللاعبون علي 1440p أيضا فرقا بين بطاقة عليا أو وسطي اذا استمر هذا الحال علي هذا المنوال طويلا!

الفارق ما بين 2080Ti و 1080Ti ضئيل للغاية علي 1440p في لعبة Far Cry 5! والسبب أن المعالج نفسه لا يستطيع تقديم أداء أعلي من ذلك!
وهذه الحقيقة المؤلمة تكشف حجم الخلل الذي نعاني منه في أداء المعالجات المركزية حاليا، فالأمر لا ولن يقتصر علي بطاقات RTX فحسب، فكل ما سيأتي بعدها من أجيال سيعاني من نفس الشئ أيضا! بطاقات AMD القادمة ستعاني نفس الشئ، وبطاقات NVIDIA القادمة كذلك، وما بعدهم ثم ما بعدهم!
اختناق 1080p اليوم هو اختناق 4K غدا مع البطاقات الرسومية المستقبلية القوية .. والفكرة ليست في دقة العرض نهائيا، الفكرة في ان المعالج المركزي يعجز عن تقديم عدد اطارات معين فوق حد معين بعض النظر عن دقة العرض.
وحصيلة هذا ان البطاقات الرسومية الجديدة ستنزل الي الأسواق بأداء قوي وضخم، لكنه لا يفيد أحد سوي من يملكون شاشات ذات دقة عرض عالية: 4K فما أعلي. مما يعني أن مصنعي الشاشات وبطاقات الرسوميات سيدفعون بقوة في اتجاه زيادة انتشار تلك الشاشات.
واذا ما ظل حال المعالجات بائسا كما هو الآن، فسرعان ما سيجد مالكي شاشات الـ 4K نفسهم محاصرين أيضا، وحينها سنجد من يقنعنا بأن 5K أو 6K أو 8K هي الحل! ونجد أنفسنا من جديد في سعي عبثي واهتمام أحمق برفع دقة العرض وتجاهل تحسين الرسوم. تلك الدوامة التي سأمناها .. فزيادات دقة العرض Resolution تصبح بلا قيمة بعد حد معين، والأهم والأكثر تأثيرا منها هو زيادة تعقيد الرسوم Graphics والذكاء الاصطناعي AI ومحاكاة الطبيعة Physics.
وربما يقوم مصنعي البطاقات الرسومية بأنفسهم بالدفع في هذه الاتجاهات المفيدة، وربما تكون مبادرة RTX و تتبع الأشعة Ray Tracing نفسها جزءا من هذا، فالكل يعلم ان زيادة دقة العرض المستمر هو أمر عبثي لا طائل من وراءه. إننا نضيع قوة البطاقات الرسومية في رسم ملايين من نقاط الألوان Pixels بدلا من أن نوجه تلك القوة في زيادة جودة وواقعية تلك النقاط من الأصل!
إن اللاعب لن يستفيد من رؤية عشرات الملايين من النقاط Pixels أمامه، ولن تتحسن تجربته البصرية، لكنه سيستمتع حقا اذا ما شاهد مليون نقطة تتمتع باضاءة واقعية وظلال متقنة وذكاء اصطناعي ومحاكاة طبيعة حقيقية. هذا هو ما ينبغي أن ينصب تركيزنا عليه، وليس أي شئ آخر!
بل ان اللعب الاحترافي علي شاشات بمعدل عرض عالي high refresh rate monitors قد صار في خطر، كيف يمكنك اللعب علي شاشة بمعدل عرض 240Hz و معالجك غير قادر علي اخراج 240 صورة frame كي تُعرض عليها؟! أغلب اللاعبين بهذا النمط عادة ما يشتري شاشة عرض بخواص 1080p و 240Hz، مع أقوي البطاقات الرسومية كي يحصل علي عدد اطارات ضخم، هذا اللاعب لن يستطيع الآن تجربة البطاقات العليا الحالية والحصول علي معدل اطارات أعلي بسبب أن كل المعالجات المتاحة لا توفر القوة اللازمة لهذا! إن استمرار هذه المهزلة قد تؤدي الي تبسيط المطورين لتعقيد رسوم العابهم التنافسية املا في الحصول علي معدل اطارات عال! وهو أمر في غير صالح التقدم التقني.

لكن الأسوأ من هذا كله أن الأفق يبدو مسدودا، فلا نتوقع حصول طفرة قوية في المعالجات تعالج هذه المشكلة! معالجات ِAMD القادمة متوقع لها تحسين أداء النواة الواحدة لمستوي Intel أو ربما أعلي قليلا، ومعالجات Intel القادمة لن تأتي الا في نهاية 2019، ولن تقوم باحداث تغيير جذري في المعمارية، أي أنها لن تأتي بقفزة ضخمة في الأداء، مما يعني أنها ستأتي متأخرة جيلا آخر عن البطاقات الرسومية القوية وستأتي بدون قوة كافية! أي أن الوضع سيستمر كما هو حتي 2020 علي الأقل!
ومالم تحدث طفرة كبيرة في أداء النواة الواحدة في المعالجات المركزية، أو تتعرض البطاقات الرسومية للبطء في تقدمها فان الحال سيظل كما هو، أو ربما سيسوء أكثر! فالمتوقع من البطاقات الرسومية علي دقة تصنيع 7nm أن تأتي بقفزة أدائية ضخمة كما هو المعتاد.
بل إن الحال أسوأ مما يبدو، لدينا ألعاب عديدة تختنق الآن بأداء المعالجات المركزية حتي علي دقة عرض 4K! تلك الألعاب تحتاج الي معالجات ذات أداء عال للنواة الواحدة بالفعل، وهو الأمر الغير ممكن بأداء ما لدينا من معالجات بالفعل.
ألعاب مثل ARMA 3 أو Flight X Simulator تحوي مسافات رسم هائلة للبيئة، تظهر حتي كيلومترات من التفاصيل البعيدة، وتحتاج الي نواة واحدة قوية بتردد مرتفع وسرعة معالجة أوامر فائقة، والا فان لعبهم علي أي دقة عرض بمعدل 60fps مستقر يصير مستحيلا! حتي علي 720p!

ألعاب مثل Watch_Dogs 2 و ِArk Survival تحوي كما هائلا من التفاصيل في البيئة المحيطة، الي درجة أن المعالجات الحالية غير كافية! بطاقة 2080Ti و معالج 9900K تتعرض للانخفاض الي 45fps حتي علي 1080p في هذه الألعاب!
ألعاب مثل Total War Warhammer و Ultimate Epic Battle Simulator، تحوي أعدادا ضخمة للغاية من الواحدات القتالية والذكاء الاصطناعي، بكل تفاصيل الاقتتال والاشتباك، وهو الأمر الذي يجبر أقوي المعالجات المركزية علي الركوع .. واللاعب يفاجئ بأن مستوي أداء اللعبة لا يتعدي الـ 20fps حتي مع أقوي البطاقات الرسومية!

والأمر لا يقتصر علي تلك الألعاب فحسب، بل إن المئات من الألعاب تعاني من المواقف والمشاهد التي تكون اللعبة فيها مختنقة بأداء المعالج المركزي CPU، كل المشاهد ذات مسافات الرسم الطويلة، (مثلا مشهد القفز من الطائرة في لعبة PUBG)، او كل المشاهد التي بها أعداد كبيرة من الشخصيات، أو بها عدد كبير من الانفجارات والتحطيم والدمار .. كلها مشاهد ينخفض فيها معدل العرض حتي علي دقة 1080p مع أي بطاقة رسومية، والسبب في هذا أن تلك المشاهد تتعدي قوة المعالجات المركزية الحالية علي التعامل معها!
وهذا كله ليس الا أعراض لمرض مزمن تعاني منه المعالجات المركزية الحالية! هذا المرض هو ضعف أداء النواة الواحدة Single Core بشكل عام، فكل تلك الألعاب السابق ذكرها لن تتحسن فيها تجربة اللعب الا بتحسن أداء النواة الواحدة، فهو المسئول عن تسريع أداء كل تلك الجوانب التي ذكرناها، تسريع الذكاء الاصطناعي، وتسريع رسم التفاصيل الغزيرة، ورسم المسافات البعيدة ..الخ. وخاصة أن كل الألعاب حاليا تعتمد علي أداء النواة الواحدة، وحتي لو لم تكن تعتمد، فأداء النواة الواحدة القوي يسرع كل التطبيقات، سواء تلك التي تعتمد علي الأنوية الكثيرة أو القليلة. إنه الرصاصة السحرية التي تحل كل المشكلات.
والحقيقة المؤسفة إن مرض ضعف النواة الواحدة قد تفشي في المعالجات المعاصرة وتغلغل حتي صار انتزاعه والخلاص منه أمرا بالغ الصعوبة، فكل الحلول للشفاء منه غير قابلة للتطبيق عمليا في الوقت الحالي!
فنحن لا نستطيع زيادة تردد المعالجات بالشكل الكافي، ليس لدينا تقنيات تصنيع تسمح بهذا!
ثم إننا حتي لو زدنا تردد المعالجات، فإننا لا نستطيع الاستفادة من تلك الزيادة بسبب قصور المعمارية الخاصة بالمعالج، المعماريات عتيقة وعفي عليها الزمن، وتصميم معماريات جديدة كليا يتطلب زيادة في حجم المعالجات نفسها وبالتالي في استهلاكها للطاقة! وليست لدنيا التقنيات لهذا بعد! والمصنعين لا يبدون قادرين علي تحمل تلك التكلفة بعد.

وحتي لو زدنا من تعقيد المعمارية، فاننا لا نستطيع الاستفادة من هذا التعقيد بالحد الأمثل، بسبب الأجزاء المظلمة Dark Silicon التي تصول وتجول في كل بقاع المعالجات المركزية، والمادة المظلمة Dark Silicon في المعالجات هي حصاد ما زرعناه، فمع ازدياد عدد الدارات Transistors في المعالج الي الضعف كل فترة، وثبات استهلاك الطاقة أو انكماشها المستمر، فان الطاقة المتوفرة لكل دارة Transistor تتقلص الي النصف، مما يعني أنه من المستحيل عمليا تشغيل كل الدارات في المعالج معا في نفس الوقت، وأقصي ما يمكننا عمله هو تشغيل نصف المعالج وترك النصف الاخر مظلما بلا عمل.
والأجزاء المظلمة هي بالأساس أجزاء شرهة في استهلاك الطاقة، فتسحب كل طاقة المعالج اليها تاركة باقي أجزاء المعالج دون طاقة ودون قدرة علي العمل، تلك الأجزاء لا يمكن حتي تشغيلها جنبا الي جنب مع باقي أجزاء المعالج، فهي تظلم نفسها فورا حينها وتنتظر تفرغ الطاقة كلها لها كي تعمل! والسبب في هذا كله أننا محدودون باستهلاك طاقة وخرج حراري معين في كل معالج، وتشغيل أجزاؤه كلها معا يعني أنني سنتعدي الحد الأقصي للطاقة والحرارة فورا وبقدر كبير! لذا فان المعالج لا يستطيع العمل الا بقدر معين أو حد اقصي من الطاقة، وهذا القدر لا يكفي لتشغيل الأجزاء المظلمة مع باقي أجزاء المعالج جنبا الي جنب!

باختصار هناك مشكلة مخيفة متكونة في قلب كل معالج، وملخصها أن المعالج لا يمكن تشغيله بنسبة 100% أبدا بحيث تعمل كل أجزاؤه معا في وقت واحد بأقصي قدرة! لابد للمعالج من أن يقلل تردده أو أن يغلق المعالجة في بعض أجزاؤه .. وتسمي هذه الظاهرة باسم الأجزاء المظلمة Dark Silicon، وهي تعيب كل تصميمات المعالجات الحالية، وتمنع وصولهم الي آفاق عليا من الأداء، ومن المفترض أن مصنعي المعالجات يعكفون علي إيجاد حل لهذه الظاهرة المخيفة! والحلول المباشرة المقترحة حاليا هي رفع الحد الأقصي لاستهلاك المعالج، لكن من سيتحمل تكاليف التبريد الاضافية وزيادة تعقيد تصميم اللوحات الأم Motherboards ووصلات الطاقة الاضافية من مزودات الطاقة Power Supplies؟
وفوق كل ذلك، فاننا لا نستطيع الاستفادة من تعدد الأنوية لعدم قابلية الألعاب للعمل علي أنوية كثيرة من الأصل، فبيانات الألعاب لها حد أقصي للتوزيع والتقسيم علي الأنوية .. هذا الحد لا يمكن تجاوزه لاعتماد بيانات الألعاب علي بعضها البعض وترابطها معا، وهذا يقيد قابليتها للانقسام والانفصال للعمل علي أنوية كثيرة. وهو الأمر الذي يحاول فيه مطورو الألعاب مرار وتكرارا، بلا جدوي ملموسة حتي الآن.
لقد توفرت المعالجات رباعية النواة عند الجميع لفترة طويلة تجاوزت العقد من الزمان، ومع ذلك لم يستطع المطورين شغلها بالكامل، وليست المشكلة حقا في دعم المطورين، المشكلة الحقيقية أن البيانات نفسها لها قابلية محدودة للتشعب والانقسام.
إن التطبيقات التي تستفيد من تشعب الخطوط Threads قليلة للغاية، مقابل التطبيقات التي لا يمكنها التشعب بشكل كبير، وهؤلاء هم الغالبية العظمي، وهم الذين يؤثرون علي المستخدم بشكل مباشر. إن أغلب تطبيقات مكتبة Adobe علي سبيل المثال لا تستطيع الاستفادة حتي الآن من أكثر من 10 أنوية بشكل فعال! وحتي في الحالات التي تستفيد فيها، فان الفارق ما بين 8 أنوية و18 نواة لا يتعدي الـ 25%؟! وقس علي هذا مئات التطبيقات المشابهة لـ Adobe. إنها هي مشكلة تشعب بيانات بالأساس، بعض البيانات لا يمكنها التشعب بعد حد معين مهما فعلت.

لعبة ِAshes Of Singularity واحدة من أفضل الألعاب المصممة لتعدد الأنوية، لا تستطيع استهلاك كل الخطوط Threads في معالج Xeon ذو الـ 12 نواة! واستهلاك أول نواة 100% بينما استهلاك باقي الأنوية لا يتعدي 20%، والعديد منهم يظلون بلا عمل!
ولقد استسلم مصنعي المعالجات لهذا الأمر، فتوصياتهم تتجاهل تماما مناشدة المطورين بتصميم ألعاب تستغل الأنوية المتاحة، وتتخطي هذا الي نصح مطوري الألعاب بزيادة تعقيد الرسوم والذكاء الاصطناعي ومحاكاة الطبيعة Physics في ألعابهم لتستغل الأنوية الزائدة.
لكن الأسوأ من كل هذا أن مصنعي المعالجات المركزية أصبحوا غير عازمين علي حل هذه المشكلة في القريب العاجل، فلا هم ينتوون تعديل المعماريات، أو تعديل استهلاك طاقة المعالجات .. وإنما يهتمون فقط باسهل ما يكمنهم تقديمه في الوقت الحالي، وهو زيادة عدد الأنوية وفقط، لقد وصلنا بالفعل الي 32 نواة ونتجه الي 64 نواة! وهي زيادات لا تعني عالم الألعاب كثيرا ولا تفيده من الأصل، بعض الألعاب يرفض أصلا الاعتراف بالمعالجات التي تحوي أكثر من 10 أنوية، ولا يري أكثر منها! بل إن بعضهم لا يعمل بالأساس اذا اكتشف ان الانوية تتعدي الـ 10!
وتلك هي المشكلة الأخري، لا توجد سعة تبادل كافية bandwidth بين الذاكرة والمعالج لتسمح بتبادل قدر كبير من البيانات لكل هذه الأنوية.. فسرعة الذاكرة تتطور ببطء شديد، وهي لا تكفي مثلا حاليا لتغذية 32 نواة بـ 32 سلسلة بيانات Threads معقدة! فما بالك بـ64 نواة/سلسلة؟! أو ما هو أكثر؟!
ثم أن عدد الأنوية الكثيرة هذا يسبب نقاط اختناق متعددة في الذاكرة نفسها، نتيجة أن سرعة استجابة الذاكرة memory latency ليست بالقدر المطلوب، فالذاكرة في الأساس هي وحدة واحدة تتسلم طلبات بيانات من العشرات من الأنوية، ولا تستطيع الاستجابة لكل هذه الطلبات في وقت قصير! والحل الأمثل لهذا هو تخصيص مصفوفة ذواكر لكل نواة مع سلاسلها Thread، وهو الأمر المكلف للغاية مع ازدياد عدد الأنوية والسلاسل. لهذا تجد بعض الألعاب تعمل بصورة أسوأ مع تقنيات زيادة عدد السلاسل مثل Hyper Threading أو Simultaneous Multi Threading. يحتال أصحاب الخوادم Servers علي هذه العقبة باستعمال ذواكر بقنوات تبادل كثيرة memory channels، مثلا 12 قناة، أو باستعمال أكثر من معالج Multi CPU علي اللوحة الأم، ولكل معالج مجموعة ذواكر مخصصة له.
قنوات الاتصال ما بين الذاكرة والمعالج memory channels، نحتاج الي أضعاف هذا العدد مع كل زيادة كبيرة في عدد الأنوية
وفوق كل هذا فان العدد الكثير يسبب نقاط اختناق وتأخير في أدوات التحكم، مثل الفأرة ولوحة المفاتيح أو ذراع اللعب، لأن مزامنة معالجة البيانات علي أنوية عديدة مع تلقي أوامر اللاعب في نفس الوقت هو أمر تزداد صعوبته مع ازدياد عدد الأنوية .. وكلما ازدادت صعوبة تلك المزامنة، كلما زاد زمن المعالجة ككل، وتأخرت اللعبة في الاستجابة لأوامر اللاعب!
باختصار ان السعي المحموم وراء زيادة عدد أنوية المعالجات لن يفيد الألعاب حقا بأي شكل، وهو سعي يستمد قوته من الاحباط الذي عاصرته الصناعة في أداء النواة الواحدة.
نحتاج من الخروج من هذا المأزق، قبل أن يتفاقم ويخرج عن السيطرة، وقبل أن تتأثر صناعة الألعاب كلها! نحتاج الي الخروج منه كي نحصل علي أداء عال في الألعاب الحالية قبل المستقبلية، كي نحصل علي بطاقات رسومية قادرة علي اخراج المئات من صور العرض frames علي دقة عرض 1080p قبل 4K!
نحتاج الي تحسين أداء النواة الواحدة، نحتاج الي رفع التردد ورفع الأداء المستخرج من كل تردد، نحتاج الي معالجات أصغر (أي بعدد أنوية معقول) وأسرع، لا معالجات ضخمة الحجم (بسبب حشوها بأنوية كثيرة) متواضعة السرعة وشرهة في استهلاك الطاقة دون عائد يستحق .. نحتاج الي اعادة التركيز علي ما هو أهم، وترك ما هو مجرد عبث .. قبل فوات الأوان!
وحتي يحدث هذا فان المعالجات المركزية ستستمر في التقهقر خلف البطاقات الرسومية القوية، حتي إشعار آخر!
?xml>