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

llama.cpp b11295发布:缩短hrm_text测试固件修复Vulkan与WebGPU后端检查

该版本通过将hrm_text固件改为两个l-cycle,使fp16误差减半,重新低于 1e-4 NMSE阈值,修复Models Backend Check在Vulkan T4和WebGPU任务上的失败。

AI解读:llama.cpp发布b11295,核心改动是修复Models Backend Check:把hrm_text测试固件缩短,使fp16误差重新落回 1e-4 NMSE阈值以内。

问题出在固件本就设计为两个块在 8 个缓存槽里循环复用,误差会随复用累积,最终在Vulkan T4和WebGPU任务上越过 1e-4的NMSE上限,导致后端检查失败。

改法是让循环只跑两个l-cycle,既保留循环分支的覆盖,又把累积误差减半。这属于CI测试层面的修正,不改变llama.cpp的推理功能,用户拿到的是同一套多平台预编译包。

对使用预编译二进制的人,最实际的变化是版本号推进到b11295;对参与CI或本地复现Vulkan、WebGPU后端的开发者,这条修复解释了此前测试为何会因数值误差而非代码缺陷报红。

llama.cpp发布b11295。该版本的主要提交为“ci : fix Models Backend Check by shortening the hrm_text fixture (#29744)”。

提交说明称,hrm_text固件原本让它的两个块在 8 个缓存槽上循环复用,fp16误差因此不断累积,在Models Backend的Vulkan T4与WebGPU任务上超过 1e-4的NMSE边界。修改后用两个l-cycle,保留循环循环体的每个分支,并将误差减半。

修复的具体做法与生效范围

按照提交描述,hrm_text固件通过缩短自身来避免误差累积:它让两个块在 8 个缓存槽上循环复用,fp16误差会随复用叠加,越过 1e-4的NMSE上限。将循环改为两个l-cycle后,循环体的每个分支仍被覆盖,误差减半。这一改动针对的是CI中的Models Backend Check作业。

b11295随版本发布提供各平台预编译产物,包括macOS Apple Silicon(arm64)、macOS Intel(x64)、iOS XCFramework,Ubuntu x64/arm64/s390x(CPU)、Ubuntu x64/arm64(Vulkan)、Ubuntu x64 CUDA 12(含CUDA 12.8库)、Ubuntu x64/arm64 CUDA 13(含CUDA 13.4库)、Ubuntu x64 ROCm 10.0、Ubuntu x64 OpenVINO、Ubuntu x64 SYCL FP32/FP16、Linux arm64骁龙(CPU、Adreno GPU、Hexagon NPU)、Android arm64(CPU及骁龙版)、Windows x64/arm64 CPU、Windows arm64 OpenCL Adreno、Windows x64 CUDA 12(含CUDA 12.4 DLL)、Windows x64/arm64 CUDA 13(含CUDA 13.4 DLL)、Windows x64 Vulkan、Windows x64 OpenVINO、Windows x64 SYCL、Windows x64 ROCm 10.0,以及UI包。

  • 提交编号:#29744,标题为ci : fix Models Backend Check by shortening the hrm_text fixture。
  • 误差机制:hrm_text固件的两个块在 8 个缓存槽上循环复用,fp16误差累积后超过 1e-4 NMSE边界。
  • 受影响的CI作业:Models Backend的Vulkan T4与WebGPU任务。
  • 修复方式:改为两个l-cycle,保留循环体的每个分支并将误差减半。
  • macOS Apple Silicon(arm64,启用KleidiAI)产物标记为DISABLED,openEuler相关产物同样标记为DISABLED。
  • 发布页的Website与Attestations两项在来源内容中为空。

版本号与发布形态

b11295是llama.cpp的日常构建版本号,发布由github-actions[bot] 自动产出,附带的下载列表覆盖桌面、移动端与多种加速后端。发布说明中Website与Attestations字段没有内容,因此这两项没有可转述的信息。

信息来源

llama.cpp Releases原始来源