تحسين أداء الذكاء الاصطناعي عبر FlashAttention-4 على أجهزة NVIDIA Blackwell: التغلب على عوائق الحوسبة والذاكرة
أظهرت تقنية FlashAttention-4، أحدث إصدار من خوارزميات الانتباه المُحسّنة، تقدماً كبيراً في التغلب على القيود الحسابية والذاكرة التي تواجه نماذج الذكاء الاصطناعي الكبيرة (LLMs) على أجهزة NVIDIA Blackwell، خاصة مع تزايد طول النوافذ السياقية. تعتمد النماذج الحديثة مثل GPT وLlama على هيكل الترانسفورمر، الذي يعتمد على آلية الانتباه الذاتي لمعالجة السلاسل الكاملة دفعة واحدة، مما يسمح باستيعاب الارتباطات الطويلة المدى. لكن هذه الآلية تعاني من تعقيد حسابي وذاكرة تربيعية، ما يخلق عائقاً في التعامل مع السلاسل الطويلة. FlashAttention-4، المُصمم بشكل تكاملي بين البرمجيات والأجهزة، يُعد تطوراً جوهرياً في كفاءة تنفيذ الانتباه، مُستفيداً من الخصائص الفريدة لمعمارية Blackwell مثل وحدات التنسور 5th-gen، وذاكرة TMEM (256 كيلوبايت لكل وحدة معالجة)، وزيادة قدرة المعالجة الحسابية بشكل غير متوازن مقارنة بعرض النطاق الترددي للذاكرة. تُعد هذه التحديات محوراً رئيسياً في تطوير FA4، التي تم تخصيصها لمعالجة كل عائق عبر تحسينات جوهرية. أبرز ما يميز FA4 هو استخدامها لذاكرة TMEM لتخزين البيانات الوسيطة في المرور العكسي (backward pass)، بدلاً من الاعتماد على الذاكرة المشتركة (SMEM)، مما يقلل من حركة البيانات بنسبة كبيرة ويقلل من التوقف الناتج عن تجاوز عرض النطاق الترددي. كما تم تعديل حجم الفئات (tiles) إلى 128×128، مع تحسين تخطيط المهام (CTA scheduling) وتقسيم المساحة التسجيلية (register allocation)، ما يسمح بزيادة عمق خطوط المعالجة (pipelines) وتقليل الضغط على التسجيلات. بالإضافة إلى ذلك، تم تقليل الحمل على وحدات MUFU (وحدات العمليات غير المصفوفية) من خلال استبدال العمليات العددية المكلفة (مثل الأس) بمحاكاة برمجية مبنية على عمليات FMA وتقريبات كثيرة الحدود، ما يقلل من وقت التنفيذ بنسبة تصل إلى 60%. كما تم إعادة تصميم خطوط المعالجة لتمكين التشغيل المتزامن بين العمليات الحسابية (MMA)، وعمليات التفاضل (softmax)، ونقل البيانات، مما يقلل من فراغات المعالجة. النتائج مذهلة: حققت FA4 ذروة أداء تصل إلى 1,605 TFLOPS/ثانية، أي 71% من الحد الأقصى النظري للمعالج، مع تسريع يصل إلى 1.3 مرة مقارنة بـ cuDNN و2.4 مرة مقارنة بـ Triton Inference Server. في المرور الأمامي، بلغ التسارع 3.6 مرة مقارنة بـ FA2 عند طول سلسلة 32,768، وفي المرور العكسي، تجاوز التسارع 3.15 مرة. تم دمج تقنيات FA4 في إصدار cuDNN 9.14، كما تدعمها أطر تشغيل مثل SGLang وvLLM في مرحلة التعبئة (prefill). كما تم تطويرها باستخدام أدوات مثل CuTe DSL، ما ساهم في تقليل وقت التجميع بنسبة 20 إلى 30 مرة مقارنة بالإصدار السابق، مع الحفاظ على مرونة التنفيذ. بشكل عام، يُعد FlashAttention-4 نموذجاً ناجحاً للتصميم التكاملي بين البرمجيات والأجهزة، يُمكّن من استغلال كامل إمكانات معالجات Blackwell، خاصة في التكوينات متعددة العقد والبطاقات، ويعزز كفاءة الأداء والطاقة في تدريب وتشغيل نماذج الذكاء الاصطناعي الكبيرة.
