llama.cpp发布b11719:CUDA注意力内核调整越界检查条件
该版本提交说明称,在k_VKQ_max = (k_VKQ_max - nbatch_fa) 时,ggml-cuda的fattn不再检查越界(oob),对应PR #30572。
AI解读:llama.cpp发布构建版本b11719,主要代码变更为ggml-cuda后端中fattn的越界检查逻辑,对应PR #30572。
提交说明写明的条件是:当k_VKQ_max = (k_VKQ_max - nbatch_fa) 时,不再执行oob检查。
同版本继续提供多平台预编译包,覆盖macOS、iOS、Linux、Android、Windows,以及CPU、Vulkan、CUDA、ROCm、OpenVINO、SYCL等后端。
发行说明标注macOS Apple Silicon的KleidiAI构建与openEuler相关构建为DISABLED,并分别指向PR #23780 与PR #23705。
来源仅为发布页与提交说明,未提供该改动对性能或正确性影响的公开测试数据。
llama.cpp发布构建版本b11719。发布页列出的代码变更只有一项:ggml-cuda后端的fattn在k_VKQ_max = (k_VKQ_max - nbatch_fa) 时不再检查越界(oob),对应PR #30572。
同一发布页还列出了该版本在各平台的预编译产物下载链接。
本次改动:CUDA注意力内核的越界检查条件
发布说明的变更条目为“ggml-cuda: fattn do not check oob if k_VKQ_max = (k_VKQ_max - nbatch_fa) (#30572)”。按字面理解,改动针对ggml-cuda的fattn路径,在k_VKQ_max等于k_VKQ_max - nbatch_fa这一条件下跳过oob检查。
发布说明没有解释该条件在实际推理中何时出现,也没有给出改动前后的性能或数值结果对比。
b11719提供的构建与平台范围
发布页按平台列出下载项:macOS Apple Silicon(arm64)与macOS Intel(x64)、iOS XCFramework;Linux下Ubuntu x64/arm64/s390x的CPU构建,以及Vulkan、CUDA 12(12.8)、CUDA 13(13.4)、ROCm 10.0、OpenVINO 2026.4.1、SYCL FP32/FP16构建。
移动端提供Android arm64的CPU构建与骁龙(CPU、Adreno GPU、Hexagon NPU)构建;Windows提供x64/arm64的CPU构建,以及OpenCL Adreno、CUDA 12.4/13.4、Vulkan、OpenVINO、SYCL、ROCm 10.0构建。另有UI包。
- macOS Apple Silicon的KleidiAI启用构建标注为DISABLED,链接指向PR #23780
- openEuler的x86 310p、x86 910b(ACL Graph)、aarch64 310p、aarch64 910b(ACL Graph)均标注为DISABLED,链接指向PR #23705
如何理解这条更新的适用范围
这条变更只涉及CUDA后端fattn路径上的一个越界检查分支,使用CUDA构建的用户才与该改动直接相关;下载CPU、Vulkan、ROCm、SYCL等其它后端构建的用户不受该条目描述的逻辑影响。
发布页未提供基准测试或正确性验证结果,因此无法据此判断该改动带来的速度变化或精度影响。