رقاقة سيليكون
رقاقة سيليكون

@ChipofSilicon

25 Tweets 22 reads Aug 07, 2020
[نظرة أولية على معالجات #Apple لحواسيب الماك]:
لا أظن أحداً يشك بأن أبرز ما أعلنت عنه #Apple في مؤتمر المطورين هو نقل حواسيب الماك لمعمارية #ARM؛ وسأحاول في هذه السلسلة بيان مضامين هذا الانتقال بنوع تفصيل، وقد أستعين ببعض من الحدس والتوقع المستخلص من المعلومات الشحيحة -حالياً-.
أولاً: من نافلة القول بأن نذكر أن الانتقال من معمارية لأخرى ليس أمراً جديداً على #Apple، بل هو طريق عبّدتهُ بتكرار السير عليه ثلاث مرات قبل ذلك، والمعماريات هي على الترتيب:
١- معمارية Motorola 68000 (١٩٧٩-١٩٩٤)
٢- معمارية PowerPC (١٩٩٤-٢٠٠٦)
٣- معمارية Intel x86 (٢٠٠٦-٢٠٢٠)
وتلك التجارب السابقة منحتها إدراكاً كافياً بطبيعة الصعوبات التي ينبغي تذليلها خصوصاً تجاه البرامج المبنية على المعمارية السابقة ومطوريها -أو هكذا أرجو-.
ولا أدل على ذلك من استعدادها لهذه اللحظة منذ سنوات وتوفيرها عدة أدوات وطرق لتجاوز مشكلة (التوافقية) بين المعماريتين المختلفتين.
السؤال الآن: لمَ الانتقال أصلاً؟
لمَ تتجشم #Apple عناء "التضحية" بكل ذلك الإرث من البرامج والاستقرار طوال عقد ونصف العقد منذ آخر انتقال؟
قد يقول قائل: لا عجب فهذه الشركة تحب التحكم بكل شيء في منتجاتها.
لكن هل من مبرر حقيقي خلف هذا الأمر؟
أرجو أن تجد الجواب بعد قراءتك للسلسلة!
ندخل الآن في الكلام عن معالجات الماك بمعماريتها الجديدة، أو كما تسميها الشركة: #AppleSilicon
وبعكس ما قد يظن البعض، فأنا لن أتحدث عن مقارنة الأداء بين أنوية الCPU في المعالجين؛ لعدم علمنا، ولأنها ليست النقطة الأهم.
بل سأتحدث عن المميزات المكتسبة بغض النظر عن أداء الCPU!
فلنبدأ:
طبعاً الجهاز الذي استعرضت به #Apple وقدمته للمطورين هو عبارة عن معالج iPad Pro الصادر حديثاً (ِA12Z) بداخل صندوق (Mac mini)
والذي أكد نائب رئيس هندسة البرمجيات كريج فيدريجي بأنه للتجريب المؤقت وأن لا نية لهم لوضعه في منتج حقيقي، محذراً من الحكم على الأجهزة المستقبلية بناء عليه.
نبدأ بنظرة عامة للاختلاف ما بين المعالجين على الماك:
في الصورة تمثيل لحواسيب الماك الحالية بمعالجات #Intel وكما ترون فهناك:
١- الCPU مع ذاكرة الرام الخاصة به
٢- الGPU مع ذاكرته الخاصة به (VRAM)
٣- رقاقة Apple T2: وتحوي مكونات للحماية والتشفير، ومعالجة الصور، والتحكم بالمايكروفون.
في المقابل، هذا تمثيل للمكونات الأساسية في معالج #Apple مقارنة بسابقه، ونجد اختلافاً جوهرياً:
وهو أنه بدلاً من ذاكرتين منفصلتين؛ يتشارك كل من الCPU والGPU في ذاكرة الرام، وهذا الأمر له تداعيان:
١- إسقاط كلفة نقل البيانات عندما يتشاركانها
٢- استهلاك أحدهما للذاكرة يؤثر على الآخر.
هل معنى ذلك أن الCPU والGPU يغترفان من معين واحد، فإذا استهلك أحدهما كمية كبيرة من الذاكرة فهو يعيق عمل الآخر؟
نعم.
طيب أليس هذا أمراً سيئاً؟ مع علمنا بأن أكثر ما يحد أداء كروت الGPU هو الاستهلاك الكبير للذاكرة!
نعم سيئ... إلا إذا قللنا حاجة الGPU لاستعمال الذاكرة المشتركة أصلاً!
ألمحت سريعاً لموضوع الGPU بغرض تبيين تبعات الذاكرة المشتركة ليُفهم حجم التغيير الجوهري فقط، وسأفصل فيه لاحقاً وكيف حلت #Apple هذه المشكلة.
بعد أن أدركنا أبرز اختلاف جوهري في المكونات الرئيسية بين المعماريتين، فلنأخذ كل واحد منها بتفصيل يليق به:
١- الCPU:
الفرق الأساسي -كما قد يحزر كثير منكم- هو في وجود أنوية متغايرة القوة كما في الهواتف (اليمين)، مقابل الأنوية المتشابهة كمعالجات الحواسيب التقليدية (اليسار)، والتي هدفها الأساسي: توفير الطاقة.
وأخيراً، الاستراتيجية التي بدأتها #ARM مطلع ٢٠١٢ تجد طريقها رويداً للحواسيب!
وللاستفادة المثلى من الأنوية المتغايرة؛ ينبغي أن يكون النظام على وعي كامل بكيفية توزيع الحِمل عليها.
والأمر مأخوذ بعين الاعتبار في حزمة #Apple التطويرية، كالتفريق بين العمليات التفاعلية التي تتطلب سرعة، وعمليات الخلفية المتراخية.
ولذا ستجد تطبيقات تنشّط نوعاً واحداً من الأنوية.
٢- الGPU:
تذكرون حينما ذكرنا فرقاً أساسياً بين المعماريتين: وهو اشتراك كل من الCPU والGPU في ذاكرة واحدة وأن هذا رغم تخفيفه عبء نقل البيانات بينهما؛ إلا أنه يفتح احتمالية تأثير أحدهما على أداء الآخر سلباً؟
الحل السحري يكمن في ذلك المستطيل البرتقالي الصغير داخل الGPU، وخذ التفصيل:
نحن نعلم أن اعتماد الGPU الثقيل على الرام ليس مشكلته الوحيدة هنا هي مزاحمة الCPU فقط بل ثمة مشكلتين إضافيتين:
١- أنه الوصول للذاكرة يستغرق وقتاً طويلاً نسبياً.
٢- أنه يستهلك قدراً كبيراً من الطاقة.
وكما أن لـCPU ذاكرة كاش سريعة لتخفف من ذلك، فللGPU ذاكرة محلية سريعة وموفرة للطاقة
لكن المشكلة في هذه الذاكرة -كحال الCPU مع الكاش- أنها صغيرة ولا تكفي صوراً كاملة بدقة عالي.
وهنا يأتي امتياز معمارية الGPU في #Apple التي تسعى بكل سبيل لتجنب الاحتياج للذاكرة الرئيسية قدر الإمكان والاكتفاء بالعمل في نطاق تلك الذاكرة الصغيرة السريعة.
الصورة اليسرى هي الحالة المثلى
كيف تستطيع الذاكرة الصغيرة السريعة أن تسع صورة كاملة؟
الجواب: أنها لا تحتاج أن تسعها، وهذا عائد للتقنية التي اشتهرت في معالجات الهواتف لتخفيفها الضغط عن الذاكرة بتقسيم الصورة لعدة أقسام ومعالجة كل منها على حدة.
وهذه التقنية لها أشكال كثيرة، والتي تستعملها #Apple تُعرف باسم: TBDR.
وهذه التقنية ليست من بنات أفكار #Apple بل أشهر من يتبناها اليوم شريكها السابق: Imagination، صاحبة سلسلة الGPU الشهيرة: PowerVR.
ولذا لا أستشكل أن أقول بأن ما تملكه #Apple حالياً هو نسخة مطورة.
وجدير بالذكر أن #Apple جددت عقدها مع الشركة في يناير لتستمر باستخدام براءات اختراعها.
وهذا ليس بمستغرب، فمجال الGPU هو حقل ألغام لا تكاد شركة تتحرك فيه إلا وانفجرت فيها تهمة انتهاك براءة اختراع، وحيتانه الثلاثة:
١- Nvidia
2- AMD
3- Imagination
ولو أضفت رابعاً فهي: Intel.
ولذا من أنجح صفقات كوالكوم: شراء قسم Imageon من AMD ٢٠٠٩.
وأشبهه بشراء #Apple لPA Semi في ٢٠٠٨
طيب بعد هذا كله، هل لدينا مؤشرات عما يمكن أن يكون عليه أداء الGPU في حواسيب الماك الجديدة؟
رغم تكتم #Apple الشديد على نقطة الأداء، إلا أن حماس المسؤولين وثقتهم لا تخطئها عين.
لكن عندي دليل وجدته في معمعات شرح #Apple للمطورين كيفية نقل تطبيقاتهم، وتحديداً عند كلامهم عن Metal API
باختصار Metal: هي الواجهة البرمجية التي تستخدمها #Apple للوصل ما بين معالج الGPU والبرامج. ويقابله OpenGL وVulkan وDirect3D في أنظمة أخرى.
ولأنها تتفرد بتلك الواجهة البرمجية؛ فهي تستطيع أن تتحكم تحكماً كاملاً بما يمكن للمبرمجين الوصول إليه، بما في ذلك المميزات الفريدة في الGPU.
المهم هنا أننا نجد Metal يدعم ثلاث أنواع GPUs:
١- المدمج: قليل الاستهلاك للطاقة، ويصلح للعمليات الخفيفة.
٢- المنفصل: متوسط الاستهلاك للطاقة، ويصلح للعمليات المتوسطة للثقيلة (ومثاله AMD GPU في حواسيب الماك)
٣- الخارجي: عالي الاستهلاك للطاقة (والذي يتم وصله عن طريق Thunderbolt 3)
وبناء على ما سبق: كان العرف على أن الذي يحدد الGPU المدمج هو كونه قليل الاستهلاك، فكان المبرمج يتعرف عليه بكونه كذلك (low power)
لكنهم نبهوا بأن الGPU الجديد لا يدخل تحت هذا الصنف؛ لماذا؟
قالوا لأنه يضارع أداء الGPU المنفصل!
ومع ذلك استهلاكه للطاقة أقل (بكثير) من المدمج والمنفصل!
ويؤيده ما رأيناه من استعراض أداءه في بعض برامج التصميم ثلاثي البعد كـCinema 4D كما في هذا المقطع.
لو صح قولي في كل ما سبق: فإن استغناء #Apple عن وضع معالجات #AMD في حواسيبها المحمولة مطلقاً = هو أمر وارد جداً!
بفعلها ذلك ستكسب: تقليل الحجم واستهلاك الطاقة، أليست هذه الغاية أصلاً؟
طيب ماذا عن حواسيبها العليا iMac/Mac Pro، هل سنرى GPU منفصل بشعار التفاحة؟
لا أستبعد شيئاً حقيقة!
ولو كنا سنتكهن بالقياس على أحداث سابقة، فعندنا (Afterburner) الذي تكلمت عنه هنا:
صحيح أنه ليس GPU، ولكنه يعطيك فكرة عما قد تفعله #Apple في حواسيبها العليا.
أطلت ولم أتكلم إلا عن المكونين الأساسيين من المعالج الذي يحتوي حرفياً على عشرات المعالجات والمسرعات المختلفة.
وأبرزها: معالجات الذكاء الاصطناعي والتعلم الآلي التي سترينا أداء مختلفاً في التطبيقات التي تستعمل الCore ML لأنها ستتواصل مباشرة مع تلك المعالجات.
نفد العدد، فأقف هنا :)

Loading suggestions...