CUDA-L1: تحسين تحسين CUDA من خلال التعلم التعزيزي المقارن

النمو الأسي في الطلب على موارد الحوسبة باستخدام وحدات معالجة الرسومات (GPU)، والذي يُعزى إلى التقدم السريع في نماذج اللغات الكبيرة (LLM)، أدى إلى الحاجة الملحة لاستراتيجيات تحسين CUDA آلية. رغم أن التطورات الحديثة في نماذج LLM تعطي وعدًا بتحسين توليد الشفرة، فإن النماذج الرائدة حاليًا (مثل R1، o1) تحقق معدلات نجاح منخفضة في تحسين سرعة CUDA. في هذا البحث، نقدم CUDA-L1، وهو إطار تعزيز آلي للتعلم لتحسين CUDA. يحقق CUDA-L1 تحسينات في الأداء عند تنفيذ مهمة تحسين CUDA: بعد التدريب على بطاقة NVIDIA A100، يوفر زيادة متوسطة في السرعة تبلغ x17.7 عبر جميع 250 جهاز تشغيل CUDA المدرجة في KernelBench، مع أعلى زيادات في السرعة تصل إلى x449. بالإضافة إلى ذلك، يظهر النموذج قابلية ممتازة للنقل بين هياكل GPU المختلفة، حيث يحقق زيادة متوسطة في السرعة تبلغ x17.8 على H100، x19.0 على RTX 3090، x16.5 على L40، x14.7 على H800، وx13.9 على H20 رغم أنه تم تحسينه خصيصًا لـ A100. بالإضافة إلى هذه النتائج القياسية، يظهر CUDA-L1 عدة خصائص ملحوظة: 1) اكتشاف مجموعة متنوعة من تقنيات تحسين CUDA والتعلم من كيفية دمجها بشكل استراتيجي لتحقيق أداء مثالي؛ 2) كشف المبادئ الأساسية لتحسين CUDA؛ 3) تحديد زجاجات العنق غير الواضحة للأداء ورفض التحسينات التي قد يبدو أنها مفيدة ولكنها ضارة بالأداء. تبين قدرات CUDA-L1 أن تعزيز التعلم يمكن أن يحول نموذج اللغة الكبير الذي يؤدي بشكل سيء في البداية إلى محرك فعال لتحسين CUDA من خلال إشارات المكافأة المستندة إلى زيادة السرعة فقط، دون الحاجة إلى الخبرة البشرية أو المعرفة المتخصصة. وأكثر أهمية من ذلك، يتمكن النموذج المدرب بالتعلم الآلي من توسيع قدراته الاستدلالية إلى جهazes تشغيل جديدة. هذا النهج يفتح إمكانات لتحسين آلي لعمليات CUDA ويعد بمزيد من تعزيز كفاءة GPU وتخفيف الضغط المتزايد على موارد الحوسبة باستخدام وحدات معالجة الرسومات (GPU).