أصدر مشروع llama.cpp الإصدار b10181، الذي يتضمن إصلاحًا في ggml-cuda لتعطيل الضرب المصفوفي الكمّي (MMQ) على وحدات معالجة الرسومات التي تحتوي على أقل من 48 KiB من ذاكرة الكتلة المشتركة لكل كتلة. سابقًا، كانت تكوينات MMQ تفترض حدًا أدنى قدره 48 KiB، مما تسبب في أخطاء قاتلة على أجهزة مثل وحدات معالجة الرسومات NVIDIA Pascal وMoore Threads MTT S70 حيث تجاوز حجم البلاطة الذاكرة المتاحة.
- يضيف الإصلاح حارسًا في `ggml_cuda_should_use_mmq()` للتحقق من ميزانية الذاكرة المشتركة قبل اختيار بلاطات MMQ.
- الآن، تنتقل الأجهزة ذات الذاكرة غير الكافية إلى مسار BLAS أثناء مرحلة التعبئة المسبقة، مما يتجنب انهيارات البرنامج مع الحفاظ على أداء توليد الرموز.
- ينطبق هذا التغيير على أي جهاز CUDA يبلغ عن ذاكرة مشتركة لكل كتلة أقل من 48 KiB، وليس فقط أجهزة MUSA QY1 المحددة.
يمنع هذا التحديث الانهيارات على الأجهزة القديمة أو المتخصصة ذات الذاكرة المشتركة المحدودة، مما يضمن استقرارية الاستدلال من خلال استخدام الخلفية المتوافقة مع BLAS تلقائيًا.