الأخبار

ما هي وحدات المعالجة المركزية ARM وهل ستستبدل x86 (Intel)؟

What Are ARM CPUs, and Are They Going To Replace x86 (Intel)
 
الجميع يذهبون إلى ARM هذه الأيام- تقوم كل من Amazon و Apple بشحن وحدات المعالجة المركزية الداخلية مع زيادات جنونية في الأداء، مع شائعات بأن Microsoft تقوم بتطوير وحداتها الخاصة. تم استخدام ARM تاريخيًا لرقائق الأجهزة المحمولة منخفضة الطاقة، فلماذا بالضبط يقوم ARM بسحق x86 على سطح المكتب ومساحة الخادم؟
 
الجميع يذهب إلى ARM هذه الأيام
عالم المعالجات صناعة معقدة، ولا يوجد سوى عدد قليل من التصميمات من عدد قليل من الشركات قادرة على المنافسة على الأداء العالي. عادةً ما تحتل Intel أو AMD تاج الأداء، حيث يقوم كل منهما بتصنيع وحدات المعالجة المركزية x86. لكن في الآونة الأخيرة، أعطت وحدات المعالجة المركزية من Apple و Amazon المستندة إلى ARM Intel (وهندسة x86) فرصة للحصول على أموالهم.

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

لقد نجحت شركة Apple في الخروج من الساحة مع أول وحدة معالجة مركزية غير محمولة، معالج Apple Silicon M1، والذي يعمل بشكل أسرع من وحدات المعالجة المركزية Intel لسطح المكتب وبسرعة سلسلة Ryzen 5000 من AMD، تاج الأداء الحالي إنه السيليكون المخصص الذي يجعل أجهزة Apple Macbooks أسرع أجهزة الكمبيوتر المحمولة الحالية في العالم، الأمر الذي يثير استياء عشاق الكمبيوتر الشخصي (بمن فيهم أنا).
في الواقع، هم متقدمون جدًا في مساحة الكمبيوتر المحمول بحيث يعمل Windows على M1 Macbook بشكل أسرع من Surface Pro X، على الرغم من أن Windows على ARM يعمل فقط من خلال محاكي. وكما لو أن هذا لم يكن مهينًا بدرجة كافية، فإنه يسحقه تمامًا بدرجة Geekbench Single-Core البالغة 1390 مقارنة بـ 802 Surface، وهو أمر سيء بشكل مثير للضحك بالمقارنة. M1 سريع للغاية.

يشاع أيضًا أن Microsoft تقوم بتطوير معالج ARM الخاص بها، وعلى الرغم من أن هذه الشائعات تأتي من مساحة خادم Azure، فمن المحتمل أن يستخدموا نفس الشريحة لجهاز Surface إذا كان بإمكانهم مطابقة أداء Apple.
 
ما الفرق بين ARM و x86؟
في نهاية اليوم، لا يوجد فرق كبير بين ARM و x86. لا يزال بإمكانك تشغيل Google Chrome ومشاهدة YouTube على أي منهما. في الواقع، ربما تقوم بذلك الآن، حيث أن جميع أجهزة Android وكل iPhone تقريبًا تستخدم معالجًا قائمًا على ARM.

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

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

تعد كل من ARM و x86 مجموعتي تعليمات، تُعرفان أيضًا باسم البنى architectures، والتي تعد في الأساس قائمة "برامج" الكود الصغير التي تدعمها وحدة المعالجة المركزية. لهذا السبب لا داعي للقلق بشأن تشغيل تطبيق Windows على وحدة معالجة مركزية معينة من AMD أو Intel؛ كلاهما معالجات x86، وبينما تختلف التصميمات الدقيقة (وتعمل بشكل مختلف)، كلاهما يدعم نفس التعليمات. هذا يعني أن أي برنامج تم تجميعه لـ x86 سيدعم بشكل عام كلا المعالجات.

تقوم وحدات المعالجة المركزية (CPU) بشكل أساسي بتنفيذ العمليات بشكل تسلسلي، مثل الجهاز المعطى قائمة بالمهام التي يجب القيام بها. تُعرف كل تعليمات باسم رمز التشغيل، وتحتوي البنى مثل x86 على الكثير من أكواد التشغيل، خاصةً بالنظر إلى أنها كانت موجودة منذ عقود. بسبب هذا التعقيد، يُعرف x86 باسم "مجموعة التعليمات المعقدة Complex Instruction Set" أو CISC.

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

تحت الغطاء، يتم تفكيك هذه التعليمات في العديد من "العمليات الصغيرة"، التي تنفذها وحدة المعالجة المركزية. فائدة CISC هي استخدام الذاكرة، ومنذ ذلك الحين كان سعرها أعلى، اعتاد CISC أن يكون أفضل.
ومع ذلك، لم يعد هذا هو عنق الزجاجة بعد الآن، وهنا يأتي دور RISC. RISC، أو مجموعة التعليمات المختصرة Reduced Instruction Set، تلغي بشكل أساسي التعليمات المعقدة متعددة الأجزاء. يمكن تنفيذ كل تعليمات في الغالب في دورة ساعة واحدة، على الرغم من أن العديد من العمليات الطويلة ستحتاج إلى انتظار النتائج من مناطق أخرى من وحدة المعالجة المركزية أو الذاكرة.

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

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

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

هل سيحل ARM محل x86؟
الجواب الصادق هو، على الأرجح. كانت شركة Intel تشعر بنهاية قانون مور منذ سنوات، وبينما تمكنت AMD من تحقيق قفزات في الأداء في السنوات الأخيرة، إلا أنها لم تتقدم كثيرًا.

هذا لا يعني أن x86 سيتلاشى في أي وقت قريب، ولكن من الواضح أن ARM لديها إمكانات أكبر من كونها مجرد بنية للهاتف المحمول- وصمة عار لم تعد صالحة بالنظر إلى الاتجاه الحالي للصناعة. إن فوائد بنى RISC واضحة، ومع مدى تحسن شريحة Apple M1 بالفعل، يبدو مستقبل الصناعة واعدًا.

بالإضافة إلى ذلك، فإن ARM ليست بنية RISC الوحيدة المتوفرة. لا تزال ملكية ، على الرغم من أن ARM ترخص تصميماتها لمصممي الطرف الثالث، مثل Qualcomm و Samsung و Apple. RISC-V مفتوح المصدر وواعد بالمثل. إنها بنية مجموعة تعليمات قياسية، تاركة عمليات التنفيذ الدقيقة للشركة المصنعة. إذا تحركت الصناعة نحو RISC بشكل عام، فستكون هناك تطبيقات مفتوحة ومغلقة المصدر متاحة.