llama.cpp Releases

[إصدار ما قبل الإطلاق / بناء مستمر] b11475

[إصدار ما قبل الإطلاق / بناء مستمر] metal : إصلاح دمج MUL_MAT+ADD عندما يكون الباقي هو نفسه MUL_MAT (#30100) * metal : إصلاح دمج MUL_MAT+ADD عندما يكون الباقي هو نفسه MUL_MAT يختار ggml_metal_op_mul_mat_mma باقي عملية…

إصدار ما قبل الإطلاق / بناء مستمر: هذا بناء تجريبي، وليس إصدارًا مستقرًا.

metal : إصلاح دمج MUL_MAT+ADD عندما يكون الباقي هو نفسه MUL_MAT (#30100) * metal : إصلاح دمج MUL_MAT+ADD عندما يكون الباقي هو نفسه MUL_MAT يختار ggml_metal_op_mul_mat_mma باقي عملية MUL_MAT+ADD المدمجة على أنه "المُعامل ADD الذي لا تكون عمليةه MUL_MAT". عندما يكون كلا مُعاملي الـ ADD ناتجَي ضرب مصفوفات (x = W1 @ u + W2 @ v)، يكون ذلك الاختبار صحيحًا لكليهما، فيتحول الباقي إلى الناتج الخاص بضرب المصفوفات المدمج نفسه، الذي لم يُكتب أبدًا، ويضيف النواة (kernel) أي محتوى موجود في ذلك المخزن المؤقت. تحقق الدمج (ggml_metal_mul_mat_add_operand) يختار المُعامل بالفعل بناءً على الهوية؛ لذا نجعل المُشفِّر (encoder) يفعل الشيء نفسه. تأثرت نماذج قرار Clef في رأسها (proj_option_context @ ctx + proj_option_lexical @ lex، 9 صفوف خيارات): على Metal، تنهار احتمالات /v1/systemone نحو التوزيع المنتظم (billing 0.28 حيث يعطي المحرك الخلفي لوحدة المعالجة المركزية 0.977، Cloudflare_clef-flash Q8_0)، بشكل حتمي حسب تخطيط الذاكرة، وصحيح مع GGML_METAL_FUSION_DISABLE=1. ليست مشكلة تكميم: الملف نفسه صحيح على وحدة المعالجة المركزية. إضافة وضع MUL_MAT_ADD إلى test-backend-ops حيث يكون الباقي ضرب مصفوفات ثانيًا؛ على Metal يفشل في 27 من 28 حالة قبل هذا التغيير (الحالة الناجحة الوحيدة هي f16 n=2، تحت عتبة صف MMA، فلا يحدث أي دمج). * Update tests/test-backend-ops.cpp Co-authored-by: Georgi Gerganov --------- Co-authored-by: Georgi Gerganov

الموقع الإلكتروني: - https://llama.app

إشادات التحقق (Attestations): - https://github.com/ggml-org/llama.cpp/attestations/53594480

macOS/iOS: - macOS Apple Silicon (arm64) - macOS Apple Silicon (arm64، مع تمكين KleidiAI) معطَّل - macOS Intel (x64) - إطار XCFramework لنظام iOS

لينكس: - Ubuntu x64 (CPU) - Ubuntu arm64 (CPU) - Ubuntu s390x (CPU) - Ubuntu x64 (Vulkan) - Ubuntu arm64 (Vulkan) - Ubuntu x64 (CUDA 12) - مكتبات CUDA 12.8 - Ubuntu x64 (CUDA 13) - مكتبات CUDA 13.4 - Ubuntu arm64 (CUDA 13) - مكتبات CUDA 13.4 - Ubuntu x64 (ROCm 10.0) - Ubuntu x64 (OpenVINO) - Ubuntu x64 (SYCL FP32) - Ubuntu x64 (SYCL FP16) - لينكس arm64 (Snapdragon: CPU، Adreno GPU، Hexagon NPU) - دليل الإعداد

أندرويد: - أندرويد arm64 (CPU) - أندرويد arm64 (Snapdragon: CPU، Adreno GPU، Hexagon NPU) - دليل الإعداد

ويندوز: - Windows x64 (CPU) - Windows arm64 (CPU) - Windows arm64 (OpenCL Adreno) - Windows x64 (CUDA 12) - ملفات DLL الخاصة بـ CUDA 12.4 - Windows x64 (CUDA 13) - ملفات DLL الخاصة بـ CUDA 13.4 - Windows arm64 (CUDA 13) - ملفات DLL الخاصة بـ CUDA 13.4 - Windows x64 (Vulkan) - Windows arm64 (Vulkan) - Windows x64 (OpenVINO) - Windows x64 (SYCL) - Windows x64 (ROCm 10.0)

openEuler: - معطَّل - openEuler x86 (310p) - openEuler x86 (910b، ACL Graph) - openEuler aarch64 (310p) - openEuler aarch64 (910b، ACL Graph)

واجهة المستخدم: - واجهة المستخدم

المصدر الأصلي

llama.cpp Releases

ملاحظات المحتوى

النشر الأصلي والحقوق تعود إلى المصدر.

ترجمة آلية · يُرجى الرجوع إلى الأصل