llama.cpp发布b12114:WebGPU后端修正最大缓冲区大小与memset绑定限制
该版本将get_max_size改为返回maxBufferSize,并让memset/clear避免使用整缓冲区绑定,以处理超过最大绑定大小的缓冲区。
llama.cpp发布b12114版本,主要改动位于WebGPU后端。根据发布说明,该版本让get_max_size返回maxBufferSize,并在memset/clear中避免使用整缓冲区绑定,同时调整buffer_memset以处理缓冲区大小超过最大绑定大小的情况。
WebGPU后端的缓冲区处理改动
发布说明将本次变更列为“webgpu: return maxBufferSize from get_max_size and avoid whole-buffer bindings in memset/clear (#31348)”,并附有两项子说明:修正get_max_size,以及改进memset着色器。
说明还提到,buffer_memset已修改,以便处理缓冲区大小超过最大绑定大小的情况。发布说明没有给出性能数据或受影响模型、设备的进一步范围。
- get_max_size改为返回maxBufferSize。
- memset/clear路径避免使用整缓冲区绑定。
- buffer_memset调整以处理超过最大绑定大小的缓冲区。
同步提供的预编译包
发布页列出b12114的多平台预编译产物,包括macOS Apple Silicon与Intel、iOS XCFramework、Ubuntu(CPU、Vulkan、CUDA 12/13、ROCm 10.0、OpenVINO、SYCL)、Linux arm64 Snapdragon、Android arm64、Windows(CPU、CUDA、Vulkan、OpenVINO、SYCL、ROCm)以及UI包。
发布说明中macOS Apple Silicon的KleidiAI版本和openEuler相关构建标注为DISABLED。
- macOS Apple Silicon(arm64)与macOS Intel(x64)提供下载。
- iOS提供XCFramework。
- Linux覆盖Ubuntu x64/arm64/s390x及多种加速后端,另有Linux arm64 Snapdragon包。
- Android提供arm64 CPU与Snapdragon(CPU、Adreno GPU、Hexagon NPU)包。
- Windows覆盖x64/arm64的CPU、CUDA、Vulkan、OpenVINO、SYCL、ROCm构建。
- macOS KleidiAI版本与openEuler构建标注为DISABLED。