开源llama.cpp Releases·原文 2026年10月25日

llama.cpp b11857发布:MUL_MAT_ID支持 -1 索引跳过计算

llama.cpp发布版本b11857,核心变更为ggml的MUL_MAT_ID运算允许 -1 索引以跳过计算;提交同时调整Vulkan、WebGPU、CUDA、OpenVINO相关代码,但CUDA被排除在该PR之外,并留有TODO标记。

AI解读:这一版本的实际功能变化集中在ggml的MUL_MAT_ID算子:索引为 -1 时跳过对应计算。对MoE这类按专家索引取权重的模型,该特性提供了在算子层面跳过无效或占位索引的机制;来源未说明上层如何产生 -1 索引。

改动范围覆盖多个后端:提交说明列出更新Vulkan代码、修正WebGPU中mul_mat_id_vec的线程同步(确保所有线程到达工作组屏障)、修复CUDA与OpenVINO。但同一提交说明又写明“exclude CUDA from this PR”并保留TODO标记,因此CUDA在该版本中是否完整支持 -1 跳过行为,来源给出的信息自相矛盾,不能据此断言。

b11857是llama.cpp的常规滚动构建号,发布页列出各平台预编译包,包括macOS arm64/x64、iOS XCFramework、Ubuntu(CPU、Vulkan、CUDA 12.8/13.4、ROCm 10.0、OpenVINO、SYCL)、Windows(CPU、CUDA、Vulkan、OpenVINO、SYCL、ROCm)、Android arm64、Snapdragon以及openEuler等,另附UI包。这些是构建产物清单,不代表每项都针对本次算子改动做了验证。

llama.cpp发布b11857版本,提交标题为“ggml : allow MUL_MAT_ID -1 index to skip the computation(#26631)”,作者为yomaytk(共同作者)。按提交说明,ggml的MUL_MAT_ID运算现在允许 -1 索引,用于跳过该次计算。

同一提交还包含若干配套修改:更新Vulkan代码;在ggml-webgpu中确保所有线程在mul_mat_id_vec中到达工作组屏障(该改动从提交d8a4b9e摘取);修复CUDA与OpenVINO。提交说明同时写明“exclude CUDA from this PR”,并留有TODO标记。

发布页提供b11857的多平台预编译包,涵盖macOS、iOS、Linux(Ubuntu的CPU、Vulkan、CUDA 12.8与 13.4、ROCm 10.0、OpenVINO、SYCL)、Windows、Android、Snapdragon以及openEuler等目标,另附UI包。

-1 索引跳过计算覆盖哪些后端

提交说明列出Vulkan、WebGPU、CUDA、OpenVINO的代码改动,说明该行为需要各后端同步适配。WebGPU部分明确要求mul_mat_id_vec中所有线程到达工作组屏障,属于并发正确性修复。

但提交说明又写明CUDA被排除在该PR之外,并保留TODO标记;同一份说明还列有“fix cuda”。来源没有给出各后端对 -1 索引支持的最终状态表,读者不宜将发布页包含CUDA构建包等同于该后端已完整支持跳过语义。

  • MUL_MAT_ID支持 -1 索引跳过计算(提交标题)
  • 更新Vulkan代码
  • ggml-webgpu:mul_mat_id_vec中所有线程到达工作组屏障
  • 修复CUDA、OpenVINO;同时声明exclude CUDA from this PR,并留TODO
  • 来源未提供 -1 索引的生成规则、上层调用约定或性能数据

信息来源

llama.cpp Releases原始来源

更多

新闻专题
外观