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

llama.cpp b11576修复无缓存注意力KV维度填充问题

该版本将no-cache注意力路径的掩码与K、V填充至 256,使head size为 512 的模型在CUDA上不再因长度不满足FATTN_KQ_STRIDE倍数而回退CPU,也避免 -fa auto探测(1 token)误关flash attention。

llama.cpp发布b11576版本,主要改动是图执行时将无缓存(no-cache)注意力路径的KV维度填充到 256(PR #30416)。

改动针对的是:no-cache路径构造 [n_tokens, n_tokens] 掩码、并以未填充的K、V传入,导致FLASH_ATTN_EXT看到的K->ne[1] 等于n_tokens。

对于head size为 512 的CUDA内核,要求长度是FATTN_KQ_STRIDE的整数倍,因此大多数长度下该算子会回退到CPU;同时 -fa auto探测(1 token)会让此类模型关闭flash attention。

修复方式是按llama_kv_cache::get_n_kv的方式填充掩码,并将K、V用零填充到掩码的KV维度;clef自建的因果掩码也做同样填充。

b11576的发布物

该release由github-actions[bot] 发布,除代码改动外还附带各平台预编译产物链接:macOS/iOS(Apple Silicon arm64、Intel x64、iOS XCFramework)、Linux(Ubuntu x64/arm64/s390x的CPU、Vulkan、CUDA 12/CUDA 13、ROCm 10.0、OpenVINO、SYCL FP32/FP16,以及Snapdragon的CPU/Adreno GPU/Hexagon NPU)、Android(arm64 CPU与Snapdragon)、Windows(CPU x64/arm64、OpenCL Adreno、CUDA 12/CUDA 13、Vulkan、OpenVINO、SYCL、ROCm 10.0)以及UI包。

列表中若干构建被标注为DISABLED:macOS Apple Silicon的KleidiAI启用版本与openEuler相关产物。

信息来源

llama.cpp Releases原始来源