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

llama.cpp b11307修复推测解码层输入顺序,256 项CPU/CUDA/张量切分配置通过验证

该版本聚焦恢复层输入与未掩码NextN嵌入的token顺序,并明确把回归测试、OpenVINO、WebGPU等后端改动拆到后续PR,不随本版一起发布。

llama.cpp发布构建版本b11307(PR #29019),标题为“为推测解码的层输入保留原始batch顺序”。按照发布说明,该改动的目标是让层输入的token顺序在提取、重排后恢复为原始batch顺序。

对张量切分(tensor split)场景,改动描述为:每个microbatch张量从偏移零(offset zero)拷贝,并在同步后恢复原始行顺序。发布说明称,相应的层输入回归测试被扩展以覆盖张量切分以及重复的读取与解码。

对未掩码(unmasked)的NextN嵌入,改动使用原始token映射来恢复token顺序,包括层输入捕获(layer-input capture)被禁用的情况;掩码(masked)NextN行仍保留在logits输出映射上,并保留偏移零的张量拷贝。回归测试被扩展覆盖NextN单独运行、与层捕获组合、以及重复解码与getter下的掩码输出。

验证信息由提交说明给出:全部 256 项CPU/CUDA/张量切分配置通过;Qwen3.8-27B Q4_K_M MTP在并发 16 下完成MT-Bench,改动前后均可完成。

同一提交还提到,WebGPU预留与OpenVINO隐藏状态捕获的修复、以及新增回归测试和后端修复被推迟到后续PR,以保持本PR聚焦于恢复层输入与未掩码NextN嵌入的token顺序。代码注释中出现的Assisted-by: Codex表明部分修改由Codex辅助。

b11307同时提供多平台预编译包:macOS(Apple Silicon arm64、Intel x64)、iOS XCFramework、Ubuntu(x64/arm64/s390x CPU,Vulkan,CUDA 12.8与 13.4,ROCm 10.0,OpenVINO 2026.4,SYCL FP32/FP16)、Linux arm64(Snapdragon的CPU、Adreno GPU、Hexagon NPU)、Android arm64(CPU与Snapdragon版)、Windows(x64/arm64 CPU,OpenCL Adreno,CUDA 12.4/13.4,Vulkan,OpenVINO 2026.4,SYCL,ROCm 10.0)以及UI包。发布说明中macOS Apple Silicon的KleidiAI启用版与openEuler各包标注为DISABLED,并分别链接到对应PR。

信息来源

llama.cpp Releases原始来源