امتدادات المصفوفة المتقدمة

تُعدّ امتدادات المصفوفات المتقدمة ( AMX )، والمعروفة أيضًا باسم امتدادات المصفوفات المتقدمة من إنتل ( Intel AMX )، امتدادات لبنية مجموعة تعليمات x86 (ISA) للمعالجات الدقيقة من إنتل، وهي مصممة للعمل على المصفوفات لتسريع تطبيقات الذكاء الاصطناعي (AI) والتعلم الآلي (ML). [ 1 ] وتُجري هذه الامتدادات عمليات ضرب المصفوفات على مستوى العتاد، مما يجعلها مناسبة للمسائل والخوارزميات التي تعتمد على ضرب المصفوفات كعنصر أساسي.

الإضافات

أطلقت إنتل معمارية AMX في يونيو 2020، ودعمتها لأول مرة مع معمارية Sapphire Rapids الدقيقة لخوادم Xeon ، والتي صدرت في يناير 2023. [ 2 ] [ 3 ] وقد قدمت هذه المعمارية سجلات ثنائية الأبعاد تُسمى "البلاطات"، والتي يمكن للمسرعات من خلالها تنفيذ العمليات. وهي مصممة لتكون معمارية قابلة للتوسيع؛ وأول مسرع تم تنفيذه يُسمى وحدة ضرب مصفوفة البلاطات (TMUL). [ 4 ] [ 5 ]

في المراجعة رقم 46 من ملحق مجموعة تعليمات معمارية إنتل والميزات المستقبلية، الصادرة في سبتمبر 2022، تم توثيق ملحق AMX-FP16 الجديد. يضيف هذا الملحق دعمًا للأعداد العشرية ذات الدقة النصفية . وفي المراجعة رقم 48 الصادرة في مارس 2023، تم توثيق ملحق AMX-COMPLEX، الذي يضيف دعمًا للأعداد المركبة العشرية ذات الدقة النصفية . كلا الملحقين متوفران في مجموعة معالجات الخوادم Granite Rapids (مع العلم أن دعم AMX-COMPLEX متوفر فقط في Granite Rapids-D [ 6 ] ).

وحدة ضرب مصفوفة البلاط

تدعم وحدة TMUL نوعي الإدخال BF16 و INT8 . [ 7 ] كما تدعم وحدتا AMX-FP16 وAMX-COMPLEX أعداد FP16 الحقيقية والمركبة . يتكون ملف التسجيل من 8 مربعات، كل منها يحتوي على 16 صفًا بحجم 64 بايت (32 عنصرًا من نوع BF16/FP16 أو 64 عنصرًا من نوع INT8). العملية الوحيدة المدعومة هي ضرب المصفوفات وتجميعها (MMA) ، وهي امتداد لعملية الضرب والجمع المدمجة (FMA) للقيم العددية كما تُطبق على معاملات المصفوفات: [ 8 ]

جنم=جنم+ج=1جأنجبجم.{\displaystyle C_{nm}=C_{nm}+\sum _{j=1}^{J}A_{nj}B_{jm}.}[ 4 ]

يمكن لنواة معالج Intel Xeon Scalable من الجيل الرابع إجراء 2048 عملية INT8 أو 1024 عملية BF16 لكل دورة: [ 9 ] [ 10 ] أقصى أحجام الإدخال هي16×ج{\textstyle 16\times J}لـ أ وج×16{\textstyle J\times 16}بالنسبة لـ B ، حيث J تساوي 64 لـ INT8 و32 لـ BF16. يتطلب ضرب المصفوفات256ج{\textstyle 256J}الضرب و256ج{\textstyle 256J}الإضافات، وبالتالي أداء512ج{\textstyle 512J}العمليات في 16 دورة. [ 10 ]

دعم البرامج

مراجع

  1. هيمسوث، نيكول (19 أغسطس 2021). "مع AMX، تضيف إنتل تقنية الذكاء الاصطناعي/التعلم الآلي Sparkle إلى Sapphire Rapids" . المنصة التالية .
  2. ^ اون لاين، هايز (28 يونيو 2020). "Intel AMX: أول معلومات حول بنية ملحقات المصفوفة المتقدمة" . هيز على الانترنت .
  3. كاتريس، إيان. "معالج إنتل زيون سافاير رابيدز: كيفية بناء نظام متكامل باستخدام وحدات المعالجة المركزية" . أناند تك . مؤرشف من الأصل في 31 أغسطس 2021.
  4. 1 2 "امتدادات مجموعة تعليمات بنية Intel® والميزات المستقبلية" .
  5. شور، ديفيد (29 يونيو 2020). "امتداد المصفوفة المتقدم x86 (AMX) يجلب عمليات المصفوفة؛ سيظهر لأول مرة مع Sapphire Rapids" .
  6. لارابيل، مايكل (12 يوليو 2023). "دمج دعم Intel Granite Rapids D في GCC 14" . فورونيكس .
  7. "امتداد المصفوفة المتقدم (AMX) - x86 - ويكي تشيب" . en.wikichip.org .
  8. "التسريع المعمم لعمليات ضرب المصفوفات والتجميع" . patents.google.com .
  9. "تسريع أحمال عمل الذكاء الاصطناعي باستخدام ملحقات المصفوفة المتقدمة من إنتل (Intel AMX)" (ملف PDF) . إنتل . تم الاطلاع عليه بتاريخ 13 أبريل 2023 .
  10. 1 2 "دليل مرجعي لتحسين معمارية Intel® 64 و IA-32 المجلد 1" . Intel.
  11. "ما الجديد في LLVM لمعالجات Intel® Xeon® و Max Series من الجيل الرابع" . تم الاطلاع عليه بتاريخ 21 أبريل 2023 .
  12. لارابيل، مايكل (2020-07-02). "بدء دعم معالجات Intel AMX في LLVM" . فورونيكس . تم الاطلاع عليه بتاريخ 2020-07-02 .
  13. " [ X86-64 ] دعم تعليمات Intel AMX" . GitHub . 2020-07-02 . تم الاسترجاع في 2020-07-02 .
  14. 1 2 لارابيل، مايكل (2020-07-02). "دعم معالجات إنتل AMX يُضاف إلى مُجمِّع جنو" . فورونيكس . تم الاسترجاع في 2020-07-02 .
  15. "سلسلة إصدارات GCC 11 - التغييرات والميزات الجديدة والإصلاحات - مشروع جنو" . تم الاطلاع عليه بتاريخ 21 أبريل 2023 .
  16. " [ تحديث ] تفعيل دعم GCC لـ AMX" . 2020-07-06 . تم الاطلاع عليه بتاريخ 2020-07-09 .
  17. "تفعيل دعم GCC لـ AMX-TILE و AMX-INT8 و AMX-BF16. · gcc-mirror/gcc@5c60984" . GitHub . تم الاطلاع عليه بتاريخ 2022-09-05 .
  18. "يلتزم بمعالج Intel AMX" . 2020-07-02 . تم الاطلاع عليه بتاريخ 2020-07-02 .
  19. "x86: اكتشاف ملحقات المصفوفة المتقدمة من إنتل" . 2020-07-02 . تم الاطلاع عليه بتاريخ 2020-07-02 .
  20. "تتضمن ميزات لينكس 5.16 دعمًا لـ FUTEX2، وIntel AMX، وFolios، وDG2/Alchemist، ودعمًا أكبر لمعالجات Apple Silicon" . Phoronix .
  21. "الوصول إلى تعليمات Sapphire Rapids AMX على vSphere" . إيرل سي. روبي الثالث . 24-08-2023.