开源llama.cpp Releases·原文 2026年9月16日

llama.cpp更新HIP后端:MoE矩阵乘内核扩展到RDNA3.5

一次条件判断的改动(GGML_CUDA_CC_IS_RDNA3_0改为GGML_CUDA_CC_IS_RDNA3),让RDNA3.5核显也能用上MoE的ncols_opt tile启发式;作者在AMD Radeon 8060S上测得Q4_K MoE预填充提速约 16.2%。

llama.cpp发布版本b10997,其中一项HIP后端改动把MoE的ncols_opt tile启发式扩展到RDNA3.5架构。

改动位于ggml/src/ggml-cuda/mmq.cu,具体做法是把条件里的GGML_CUDA_CC_IS_RDNA3_0改成GGML_CUDA_CC_IS_RDNA3;dense的分派逻辑没有变化。

根据发布说明,作者的判断依据是「MoE ncols_opt tile启发式需要放宽以包含RDNA3.5架构」。

测试机器配置为AMD Radeon 8060S、gfx1151(RDNA3.5)、20 CU、wave32,搭配AMD Ryzen AI MAX+ 388(8C/16T)、23.79 GB RAM。

正确性验证方面,test-backend-ops用 -b ROCm0 -o MUL_MAT与 -o MUL_MAT_ID参数运行全部通过:MUL_MAT为 64/64、29/29、48/48、14/14;MUL_MAT_ID为 84/84、3/3、74/74、3/3。

性能结果:LFM2.5-8B-A1B-UD-Q4_K_M(Q4_K MoE)+16.198% [+12.704, +19.799],8/8;Qwen1.5-MoE-A2.7B-Q2_K(Q2_K MoE)+6.189% [+5.245, +7.141],8/8;两组合计(16 对)+11.081% [+7.972, +14.279],16/16。

token生成速度几乎不变

发布说明同时给出token生成(tg128)的数据:在Q4_K MoE模型上保持不变,在Q2_K模型上为 +2.188% [+0.905, +3.488]。

也就是说这次改动主要影响预填充阶段,而不是逐token解码阶段。

  • Q4_K MoE:tg128不变
  • Q2_K MoE:tg128 +2.188% [+0.905, +3.488]

b10997发布的预编译包

该版本同时提供多平台预编译产物,包括macOS Apple Silicon(arm64)与macOS Intel(x64)、iOS XCFramework、Ubuntu(x64/arm64/s390x CPU、Vulkan、CUDA 12.8、CUDA 13.3、ROCm 10.0、OpenVINO 2026.3.1、SYCL FP32/FP16)、Android arm64(CPU)、Windows(CPU x64/arm64、OpenCL Adreno arm64、CUDA 12.4/13.4、Vulkan、OpenVINO、SYCL、ROCm 10.0)以及UI包。

  • macOS Apple Silicon(arm64,KleidiAI启用版标记为DISABLED)
  • openEuler相关构建在发布页标记为DISABLED

信息来源

llama.cpp Releases原始来源