DCC: Data-Centric Compilation of Machine Learning Kernels for Processing-In-Memory Architectures
تقدم هذه الورقة DCC، وهو أول مترجم يعتمد على البيانات لأنظمة المعالجة داخل الذاكرة (PIM) يعمل على تحسين عمليات إعادة ترتيب البيانات ورموز الحوسبة بشكل مشترك للتغلب على عدم توافق الوصول إلى الذاكرة، محققاً تسريعاً كبيراً في نوى تعلم الآلة واستدلال النماذج اللغوية الكبيرة عبر بنيات متنوعة لأنظمة المعالجة داخل الذاكرة (PIM).
البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
تخيل أنك تدير مكتبة ضخمة (نموذج تعلم آلي) حيث تحتاج إلى العثور على كتب محددة (بيانات) للإجابة على الأسئلة.
المشكلة: أسلوبان مختلفان لأمين المكتبة
في الكمبيوتر التقليدي، لديك أمين مكتبة فائق السرعة (وحدة معالجة الرسومات - GPU) يعمل في مكتب مركزي كبير. لكي يعمل بسرعة، يحتاج هذا الأمين إلى ترتيب الكتب بطريقة معينة: يجب أن يكون الكتاب 1، والكتاب 2، والكتاب 3 على أرفف مختلفة حتى يتمكن من التقاطهم جميعًا في نفس الوقت من ممرات مختلفة.
ومع ذلك، لديك أيضًا مساعد جديد فائق الكفاءة (جهاز PIM) يعمل بجوار رفوف الكتب مباشرة. هذا المساعد سريع للغاية في القراءة، لكنه لا يستطيع الوصول إلا إلى الكتب الموجودة على رفه الخاص. إذا كانت الكتب مبعثرة عبر ممرات مختلفة، فسيتعين على المساعد الركض ذهابًا وإيابًا، مما سيجعله بطيئًا.
لاستخدام هذا المساعد الجديد، عليك أخذ الكتب، وإعادة ترتيبها بحيث تكون الكتب 1 و2 و3 جميعها على نفس الرف للمساعد، وتركه يقوم بعمله، ثم إعادة ترتيب الكتب مرة أخرى لوضعها في التنسيق الخاص بأمين المكتبة المركزي.
الطريقة القديمة: القيام بالأمر يدويًا
سابقًا، كان على المبرمجين تحديد أفضل طريقة لخلط هذه الكتب يدويًا. كانوا يخمنون: "هل أضع 10 كتب على هذا الرف؟ أم 20؟". إذا أخطأوا في التخمين، فسيقضي المساعد وقتًا في خلط الكتب أكثر من الوقت الذي يقضيه في قراءتها فعليًا. كان الأمر يشبه محاولة تنظيم مكتبة يدويًا بينما الساعة تدق—كان ذلك بطيئًا، وعرضة للخطأ، ويتطلب قواعد خلط مختلفة لكل مكتبة (أجهزة مختلفة).
الحل: DCC (المساعد الذكي لأمين المكتبة)
يقدم البحث نظامًا جديدًا يسمى "DCC"، وهو بمث المدبر الذكي لهذه المكتبة. بدلًا من مجرد إخبار المساعد بما يجب قراءته، يقوم DCC بتحديد أفضل طريقة لترتيب الكتب وأفضل طريقة لإخبار المساعد بكيفية قراءتها، كل ذلك في وقت واحد.
إليك كيف يعمل DCC، باستخدام استعارات بسيطة:
المترجم العالمي (التجريد متعدد الطبقات):
المكتبات المختلفة لها تخطيطات مختلفة (بعضها لديه 4 ممرات، وبعضها لديه 8). DCC يتحدث لغة عالمية. هو لا يهتم إذا كنت تستخدم مكتبة سامسونج أو مكتبة SK Hynix؛ فهو يترجم "قواعد ترتيب الكتب" إلى تنسيق يفهمه، ليعمل مع أي أجهزة.محاكي "ماذا لو" (مولد الجدولة المرتكز على البيانات):
بدلًا من التخمين، يقوم DCC بإجراء آلاف عمليات المحاكاة في عقله. يسأل نفسه: "ماذا لو وضعنا 4 كتب على الرف أ؟ ماذا لو وضعنا 8؟". إنه ينظر إلى العملية بأكملها—وقت الخلط بالإضافة إلى وقت القراءة.
- الطريقة القديمة: "لنعمل على جعل القراءة سريعة جدًا!" (مع تجاهل أن عملية الخلط تستغرق وقتًا طويلاً للغاية).
- طريقة DCC: "إذا غيرنا خطة القراءة قليلاً، يمكننا تقليل وقت الخلط إلى النصف. هذا هو الفوز الحقيقي". إنه يجد التوازن المثالي بين نقل الكتب وقراءتها.
متنبئ السرعة (متنبئ الأداء المقترن):
DCC يشبه مدربًا متمرسًا شاهد آلاف المباريات. هو لا يحتاج إلى تشغيل كل عملية محاكاة ليعرف أي واحدة ستفوز. يستخدم "نموذج تعلم" للتنبؤ بالخطة الأسرع فورًا. وهذا يعني أنه لن يضيع الوقت في اختبار الأفكار السيئة.مراقب حركة المرور (محسن الكود):
بمجرد أن يختار DCC الخطة الأفضل، يقوم بتنظيم حركة المرور. يضمن أنه عندما يلتقط المساعد الكتب، فإنه يلتقطها في دفعات مثالية (مثل التقاط كومة كاملة من الكتب دفعة واحدة) حتى لا يضيع أي وقت في انتظار الكتاب التالي.
النتائج: ما مدى السرعة؟
اختبر البحث هذا النظام في مهام واقعية، مثل تشغيل نماذج اللغات الكبيرة (الذكاء الاصطناعي الذي يكتب النصوص أو يجيب على الأسئلة).
- طفرة السرعة: في نوع واحد من الأجهزة (AttAcc)، جعل DCC الذكاء الاصطناعي أسرع بـ 13 مرة من استخدام الكمبيوتر الرئيسي (GPU) فقط. وفي نوع آخر (HBM-PIM)، كان أسرع بـ 7.7 مرة.
- الاختبار الواقعي: عند تشغيل محادثة كاملة مع ذكاء اصطناعي (مثل GPT-3 أو LLaMA-2)، جعل DCC العملية برمتها أسرع بـ 4.5 مرة في المتوسط.
- الخدعة "السحرية": كانت المفاجأة الكبرى هي أن الطرق القديمة ركزت فقط على جعل جزء "القراءة" سريعًا. أدرك DCC أن جزء "الخلط" كان هو العائق الحقيقي. ومن خلال إصلاح الخلط والقراءة معًا، أطلق العنان لمكاسب هائلة في السرعة.
باختًا
فكر في DCC كأنه مراقب حركة المرور النهائي لمدينة مزدحمة. قبل ذلك، كانت إشارات المرور تُضبط بناءً على سرعة قيادة السيارات فقط، مع تجاهل الازدحامات المرورية عند التقاطعات. ينظر DCC إلى الخريطة بأكملها، ويدرك أن الازدحامات هي المشكلة، ويقوم بتغيير توقيت إشارات المرور وتخطيط الطرق في آن واحد لجعل المدينة بأكملها تتحرك بشكل أسرع بكثير.
يزعم البحث أن هذا هو أول نظام يقوم بهذا "التحسين المشترك" لمهام الذكاء الاصطناعي على أجهزة الذاكرة الجديدة هذه، مما يجعلها عملية وسريعة للغاية لمستقبل الذكاء الاصطناعي.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.