Triton for MTIA: Bridging the Programming Model Gaps for Custom AI Accelerators
تقدم هذه الورقة أول عملية نشر لـ Triton على نطاق الإنتاج على مسرع MTIA-2i المخصص من Meta، مما يثبت أن لغة وصفية عالية المستوى (DSL) يمكنها سد فجوات نماذج البرمجة بفعالية لتحقيق أداء منافس لـ C++ المُحسّن من قبل الخبراء، مع تمكين الاعتماد واسع النطاق والفعال عبر نماذج الذكاء الاصطناหลาย المتنوعة.
البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
تخيل أنك تحاول بناء نظام قطارات ضخم وعالي السرعة لنقل ملايين الركاب (البيانات) عبر مدينة ما. لسنوات، كانت القطارات الوحيدة المتاحة تُصنع من قبل عدد قليل من الشركات الكبرى، وكانت جميعها تسير على نفس المسارات وتتبع نفس القواعد. ولكن الآن، يتم بناء نوع جديد من المدن بمسارات فريدة ومخصصة ونوع مختلف تماماً من محركات القطارات. المشكلة؟ جداول القطارات وأنظمة التذاكر القديمة (لغات البرمجة) لا تعمل على هذه المسارات الجديدة. إذا أردت تشغيل قطار على هذا النظام الجديد، فعليك استئجار فريق من المهندسين لصياغة جدول زمني جديد يدوياً لكل رحلة، وهو أمر يستغرق وقتاً طويلاً ومكلفاً للغاية. هذا هو الوضع الحالي لأجهزة الذكاء الاصطناعي (AI hardware): الشركات تبني "رقائق" مخصصة لجعل الذكاء الاصطناعي أسرع، لكن هذه الرقائق تتحدث لغة مختلفة عن الرقائق القياسية، مما يجعل استخدامها بكفاءة أمراً صعباً.
الورقة البحثية التي أوشكت على قراءتها تعالج هذا الصداع تحديداً. فهي تطرح سؤالاً كبيراً: هل يمكننا تعليم نظام جدولة القطارات القد والسهل الاستخدام هذا كيف يعمل على هذه المسارات الجديدة والغريبة دون فقدان السرعة؟ قرر المؤلفون، وهم فريق من شركة ميتا (Meta)، اختبار ذلك من خلال أخذ لغة شهيرة وسهلة الاستخدام تسمى "تريتون" (Triton) - والتي صُممت في الأصل لبطاقات الرسوميات القياسية - ومحاولة تشغيلها على رقاقة مخصصة خاصة بهم تسمى "MTIA-2i". أرادوا معرفة ما إذا كان بإمكانهم الحفاظ على "الوضع السهل" للبرمجة مع الحصول أيضاً على "الأداء الخارق" الذي يفترض أن توفره الرقائق المخصصة.
قصة المترجم السحري
إذاً، ماذا فعل فريق ميتا حقاً؟ لقد بنوا مترجماً فائق الذكاء. فكر في "تريتون" كجهاز تحكم عن بعد عالمي يمكنه تغيير القنوات في جهاز تلفاز. في الأصل، كان هذا الجهاز يعمل فقط مع أجهزة التلفاز الكبيرة والقياسية (مثل بطاقات NVIDIA وAMD). أراد فريق ميتا استخدام نفس جهاز التحكم هذا للتحكم في تلفاز غريب ومصنوع خصيصاً (رقاقة MTIA-2i الخاصة بهم)، والذي يحتوي على أزرار وأقراص تحكم في أماكن مختلفة تماماً.
كان التحدي هو أن الرقاقة المخصصة لم تكن تملك أزراراً مختلفة فحسب، بل كانت تعمل بمنطق مختلف تماماً. في التلفاز القياسي، يرسل جهاز التحكم أمراً إلى عامل صغير داخل الشاشة للقيام بشيء واحد في كل مرة. أما في رقاقة ميتا المخصصة، فيرسل جهاز التحكم أمراً إلى فريق كامل من العمال الذين يتعاملون مع كتل كبيرة من البيانات دفعة واحدة، ويجب على هؤلاء العمال إدارة صناديق التخزين الخاصة بهم (الذاكرة) يدوياً، مثل لعبة الكراسي الموسيقية حيث يجب عليك تذكر مكان كوبك بالضبط.
لحل هذه المشكلة، لم يكتفِ الفريق بإجبار جهاز التحكم القد على العمل، بل بنوا "نظاماً خلفياً" (backend) جديداً لهذا الجهاز. يعمل هذا الجزء الجديد من النظام كمترجم بارع. عندما تضغط على زر في جهاز تحكم "تريتون" (تكتب سطراً برمجياً)، ينظر المترجم إلى القواعد الغريبة للرقاقة المخصصة ويحدد بدقة كيفية ترجمة ذلك الأمر البسيط إلى التعليمات المعقدة القائمة على الكتل والتي تفهمها الرقاقة. حتى أنهم أضافوا بعض "الكلمات السحرية" الخاصة (توسعات اللغة) إلى جهاز التحكم، مما يسمح للمستخدمين الخبراء بتعديل الإعدادات إذا احتاجوا إلى استخراج أقصى سرعة ممكنة، مع إبقاء الواجهة الرئيسية بسيطة للجميع.
النتائج: سريعة، مرنة، وحقيقية
لم يكتف الفريق ببناء المترجم في المختبر؛ بل وضعوه قيد التشغيل في العالم الحقيقي. لقد اختبروه على حوالي 60 نوعاً مختلفاً من نماذج الذكاء الاصطناعي، بدءاً من أنظمة التوصية (من النوع الذي يقترح عليك الفيلم التالي لمشاهدته) وصولاً إلى النماذج التوليدية (من النوع الذي ينشئ الفن أو النصوص).
كانت النتائج مبهرة. فقد وجدوا أن الكود المكتوب بهذه اللغة السهلة عالية المستوى يعمل بسرعة تقارب سرعة الكود الذي تمت كتابته يدوياً بعناية فائقة من قبل خبراء بلغة صعبة ومنخفضة المستوى (C++). في الواقع، بالنسبة للأجزاء غير الثقيلة في هذه النماذج، تعامل نهجهم الجديد مع حوالي نصف جميع الطبقات وما يقرب من نصف وقت التشغيل الإجمالي.
والأهم من ذلك هو أنهم، في غضون ربع سنة واحدة فقط (ثلاثة أشهر)، تمكنوا من مضاعفة عدد أنواع النماذج المختلفة التي يمكنها استخدام هذا النظام الجديد وثلاثة أضعاف الوقت الذي يقضيه النظام في العمل على الرقاقة المخصصة. وهذا يثبت أنك لست مضطراً للتضحية بالسرعة من أجل الحصول على سهولة الاستخدام. باستخدام لغة مرنة مثل "تريتون"، جسدوا الفجوة بين الأجهزة المخصصة المعقدة والمطورين الذين يحتاجون لبناء نماذج ذكاء اصطناعي بسرعة.
لماذا هذا مهم؟
يشير هذا العمل إلى أننا لسنا بحاجة إلى إعادة اختراع العجلة في كل مرة تبني فيها شركة شريحة ذكاء اصطناعي مخصصة جديدة. فبدلاً من إجبار كل مطور على تعلم لغة جديدة وصعبة لكل قطعة عتاد (hardware) جديدة، يمكننا استخدام لغة واحدة قابلة للتكيف تترجم نفسها إلى أي شريحة موجودة تحت الغطاء. تُظهر الورقة البحثية أن هذا النهج ليس مجرد نظرية، بل هو واقع يعمل في الإنتاج، مما يوفر الوقت ويسمح بابتكار أسرع في عالم الذكاء الاصطناعي. إنه يشبه إثبات أن جهاز تحكم عن بعد عالمي يمكنه التحكم ليس فقط في تلفازك، بل أيضاً في مكنسة روبوت مخصصة، دون أن تحتاج أبداً لتعلم كيفية توصيل أسلاك المكنسة بنفسك.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.