الحوسبة غير المتجانسة

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

عدم التجانس

عادة ما يشير عدم التجانس في سياق الحوسبة إلى بنى مجموعات التعليمات المختلفة (ISA)، حيث يكون للمعالج الرئيسي بنية واحدة، بينما يكون للمعالجات الأخرى بنية أخرى - عادةً ما تكون مختلفة تمامًا - (ربما أكثر من واحدة)، وليس مجرد بنية دقيقة مختلفة ( معالجة الأرقام ذات الفاصلة العائمة هي حالة خاصة من هذا - لا يشار إليها عادةً بأنها غير متجانسة).

يتزايد مستوى التباين في أنظمة الحوسبة الحديثة تدريجياً مع تطور تقنيات التصنيع التي تسمح بتحويل المكونات المنفصلة سابقاً إلى أجزاء متكاملة من نظام على شريحة (SoC). على سبيل المثال، تتضمن العديد من المعالجات الجديدة الآن منطقاً مدمجاً للتفاعل مع الأجهزة الأخرى ( SATA ، PCI ، Ethernet ، USB ، RFID ، أجهزة الراديو ، UARTs ، ووحدات التحكم في الذاكرة )، بالإضافة إلى وحدات وظيفية قابلة للبرمجة ومسرعات أجهزة ( وحدات معالجة الرسومات ، ومعالجات التشفير المساعدة ، ومعالجات الشبكة القابلة للبرمجة، وأجهزة تشفير/فك تشفير الصوت والفيديو، وما إلى ذلك).

تُشير نتائج حديثة إلى أن المعالجات المتعددة الرقائقية ذات مجموعات التعليمات غير المتجانسة، والتي تستغل التنوع الذي توفره مجموعات التعليمات المتعددة، يُمكنها التفوق على أفضل بنية متجانسة من نفس مجموعة التعليمات بنسبة تصل إلى 21%، مع توفير 23% في استهلاك الطاقة، وخفض 32% في حاصل ضرب الطاقة والتأخير (EDP). [ 2 ] وقد أشار إعلان AMD في عام 2014 عن أنظمة SoC المتوافقة مع معالجات ARM وx86، والتي تحمل الاسم الرمزي "مشروع سكاي بريدج"، [ 3 ] إلى وجود معالج متعدد الرقائق ذي مجموعات تعليمات غير متجانسة (ARM+x86) قيد التطوير.

بنية وحدة المعالجة المركزية غير المتجانسة

النظام ذو بنية المعالجات المركزية غير المتجانسة هو نظام يستخدم نفس مجموعة تعليمات المعالج (ISA)، لكن النوى نفسها تختلف في السرعة. [ 4 ] يشبه هذا الإعداد إلى حد كبير المعالج المتعدد المتناظر . (على الرغم من أن هذه الأنظمة تُصنف تقنيًا كمعالجات متعددة غير متناظرة ، إلا أن النوى لا تختلف في أدوارها أو في الوصول إلى الأجهزة). يوجد عادةً نوعان من النوى: نواة عالية الأداء تُعرف عادةً باسم "النواة الكبيرة" أو نواة P، ونواة أكثر كفاءة في استهلاك الطاقة تُعرف عادةً باسم "النواة الصغيرة" أو نواة E. يُستخدم مصطلحا "النواة P" و"النواة E" عادةً في سياق تطبيق إنتل للحوسبة غير المتجانسة، بينما يُستخدم مصطلحا "النواة الكبيرة" و"النواة الصغيرة" عادةً في سياق بنية ARM. تحتوي بعض المعالجات على ثلاث فئات من النوى: النواة الأساسية، ونواة الأداء، ونواة الكفاءة، حيث تتميز النواة الأساسية بأداء أعلى من نوى الأداء؛ تُعرف النواة الأساسية باسم "النواة الكبيرة"، ونواة الأداء باسم "النواة المتوسطة"، ونواة الكفاءة باسم "النواة الصغيرة". [ 5 ]

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

التحديات

تُطرح أنظمة الحوسبة غير المتجانسة تحديات جديدة لا توجد في الأنظمة المتجانسة التقليدية. [ 7 ] يُثير وجود عناصر معالجة متعددة جميع المشكلات المرتبطة بأنظمة المعالجة المتوازية المتجانسة، بينما يُمكن أن يُؤدي مستوى عدم التجانس في النظام إلى عدم توحيد في تطوير النظام، وممارسات البرمجة، وقدرة النظام الإجمالية. تشمل مجالات عدم التجانس ما يلي: [ 8 ]

ISA أو بنية مجموعة التعليمات
قد تحتوي عناصر الحوسبة على بنى مجموعات تعليمات مختلفة، مما يؤدي إلى عدم التوافق الثنائي.
واجهة التطبيق الثنائية (ABI)
قد تفسر عناصر الحساب الذاكرة بطرق مختلفة. [ 9 ] قد يشمل ذلك كلاً من ترتيب البايتات ، واتفاقية الاستدعاء ، وتخطيط الذاكرة، ويعتمد ذلك على كل من البنية والمترجم المستخدم.
واجهة برمجة التطبيقات ( API )
قد لا تكون خدمات المكتبة ونظام التشغيل متاحة بشكل موحد لجميع عناصر الحوسبة. [ 10 ]
التنفيذ منخفض المستوى لميزات اللغة
غالبًا ما يتم تنفيذ ميزات اللغة مثل الدوال والخيوط باستخدام مؤشرات الدوال ، وهي آلية تتطلب ترجمة أو تجريدًا إضافيًا عند استخدامها في بيئات غير متجانسة.
واجهة الذاكرة والتسلسل الهرمي
قد تختلف هياكل ذاكرة التخزين المؤقت وبروتوكولات تماسكها في عناصر الحوسبة، وقد يكون الوصول إلى الذاكرة موحدًا أو غير موحد ( NUMA ). كما توجد اختلافات في القدرة على قراءة أطوال البيانات المختلفة، حيث أن بعض المعالجات/الوحدات لا تستطيع سوى الوصول إلى البايتات أو الكلمات أو الوصول المتتابع. [ 11 ]
الربط البيني
قد تحتوي عناصر الحوسبة على أنواع مختلفة من الوصلات البينية بالإضافة إلى واجهات الذاكرة/الناقل الأساسية. قد يشمل ذلك واجهات شبكة مخصصة، وأجهزة الوصول المباشر إلى الذاكرة ( DMA )، وصناديق البريد، ووحدات FIFO ، وذاكرات التخزين المؤقت ، وما إلى ذلك. علاوة على ذلك، قد تكون أجزاء معينة من نظام غير متجانس متماسكة مع ذاكرة التخزين المؤقت، بينما قد تتطلب أجزاء أخرى تدخلاً برمجياً صريحاً للحفاظ على الاتساق والتماسك.
أداء
قد يحتوي النظام غير المتجانس على وحدات معالجة مركزية متطابقة من حيث البنية، ولكنها تختلف في بنيتها الدقيقة، مما يؤدي إلى تفاوت في مستويات الأداء واستهلاك الطاقة. وقد تؤدي الاختلالات في القدرات، بالإضافة إلى نماذج البرمجة غير الواضحة وتجريدات نظام التشغيل، إلى مشاكل في التنبؤ بالأداء، خاصةً مع أحمال العمل المختلطة.
أدوات التطوير
تتطلب أنواع المعالجات المختلفة عادةً أدوات مختلفة (محررات، ومترجمات، وما إلى ذلك) لمطوري البرامج، مما يزيد من التعقيد عند تقسيم التطبيق بين هذه المعالجات. [ 12 ]
تقسيم البيانات
على الرغم من أن تقسيم البيانات على منصات متجانسة غالبًا ما يكون أمرًا بسيطًا، فقد ثبت أنه في الحالة العامة غير المتجانسة، تُصنف المشكلة ضمن فئة NP-Complete. [ 13 ] وبالنسبة للأعداد الصغيرة من الأقسام، فقد ثبت وجود تقسيمات مثلى تُوازن الحمل بشكل مثالي وتُقلل حجم الاتصالات إلى أدنى حد. [ 14 ]

مثال على الأجهزة

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

انظر أيضاً

مراجع

  1. شان، عمار (2006). المعالجة غير المتجانسة: استراتيجية لتعزيز قانون مور . مجلة لينكس.
  2. فينكات، أشيش؛ تولسن، دين م. (2014). تسخير تنوع بنية مجموعة التعليمات: تصميم معالج متعدد الشرائح غير متجانس بنية مجموعة التعليمات . وقائع الندوة الدولية السنوية الحادية والأربعين حول هندسة الحاسوب.
  3. أناند لال شيمبي (5 مايو 2014). "شركة AMD تعلن عن مشروع SkyBridge: معالجات ARM وx86 متوافقة مع نظامي التشغيل ARM وx86 في عام 2015، ودعم نظام Android" . AnandTech. مؤرشف من الأصل في 9 مايو 2014. تم الاطلاع عليه في 11 يونيو 2017. في العام المقبل، ستُصدر AMD معالجًا منخفض الطاقة بتقنية 20 نانومتر يعتمد على معالج Cortex A57 مع وحدة معالجة رسومات مدمجة Graphics Core Next.
  4. "جدولة موفرة للطاقة" . وثائق نواة لينكس .
  5. أماديو، رون (24 أكتوبر 2023). "معالج سنابدراغون 8 من الجيل الثالث من كوالكوم يعد بمعالج أسرع بنسبة 30%" . آرس تكنيكا .
  6. ميتال، سبارش (فبراير 2015). "دراسة استقصائية لتقنيات تصميم وإدارة المعالجات متعددة النوى غير المتماثلة" . مجلة ACM Computing Surveys . 48 (3): 1–38 . doi : 10.1145/2856125 .
  7. كونزمان، د.م. (2011). برمجة الأنظمة غير المتجانسة . ورش عمل الندوة الدولية حول المعالجة المتوازية والموزعة. doi : 10.1109/IPDPS.2011.377 .
  8. فلاكس، برايان (2009). إدخال المعالجات غير المتجانسة إلى التيار الرئيسي (PDF) . ندوة حول مسرعات التطبيقات في الحوسبة عالية الأداء (SAAHPC).
  9. ك. غاي؛ ل. كيو؛ هـ. تشاو؛ م. كيو (أكتوبر–ديسمبر 2020). "تخصيص بيانات الوسائط المتعددة مع مراعاة التكلفة للذاكرة غير المتجانسة باستخدام الخوارزمية الجينية في الحوسبة السحابية". معاملات IEEE في الحوسبة السحابية . 8 (4): 1212–1222 . doi : 10.1109/TCC.2016.2594172 .
  10. أغرون، جيسون؛ أندروز، ديفيد (2009). النوى المصغرة للأجهزة لأنظمة متعددة النوى غير المتجانسة . ورش عمل المعالجة المتوازية، 2009. المؤتمر الدولي للمعالجة المتوازية (ICPPW). doi : 10.1109/ICPPW.2009.21 .
  11. ^ لانج ، يوهانس (2020). Rechnen Heterogenes mit ARM und DSP Multiprozessor-Ein-Chip-Systemen (ماجستير). Fachhochschule فورارلبرغ. دوى : 10.25924/أوبوس-4525 .
  12. وونغ، ويليام ج. (30 سبتمبر 2002). "أهمية الأدوات في تطوير البرمجيات متعددة المعالجات" . www.electronicdesign.com . تاريخ الاسترجاع: 9 أغسطس 2023 .
  13. بومونت، أوليفييه؛ بوديه، فنسنت؛ راستيلو، فابريس؛ روبرت، إيف (أغسطس 2002). "تقسيم مربع إلى مستطيلات: اكتمال NP وخوارزميات التقريب" (ملف PDF) . Algorithmica . 34 (3): 217–239 . CiteSeerX 10.1.1.3.4967 . doi : 10.1007/s00453-002-0962-9 . S2CID 9729067 .  
  14. بومونت، أوليفييه؛ بيكر، بريت؛ ديفلومير، آشلي؛ إيرود-دوبوا، ليونيل؛ لاستوفيتسكي، أليكسي (يوليو 2018). "التطورات الحديثة في تجزئة المصفوفات للحوسبة المتوازية على منصات غير متجانسة" (ملف PDF) . معاملات IEEE في الحوسبة المتوازية والموزعة .
  15. غشويند، مايكل (2005). بنية SIMD جديدة لمعالج Cell متعدد الرقاقات غير المتجانس (ملف PDF) . رقائق عالية الأداء: ندوة حول الرقائق عالية الأداء. مؤرشف من الأصل (ملف PDF) بتاريخ 18 يونيو 2020. تم الاطلاع عليه بتاريخ 28 أكتوبر 2014 .