llama.cpp b11918为OpenCL后端加入q3_k量化初步支持
该版本在OpenCL后端新增q3_k的多种矩阵运算内核,并对Adreno GPU的q3_k内核做了调优;提交由Hongqiang Wang参与共同署名。
AI解读:提交说明列出四类OpenCL内核新增:q3_k的AOS mv、SOA mv与tiled mm、面向Adreno的noshuffle gemm/gemv、面向Adreno的dp4a gemm。
另有一项针对Adreno的q3_k内核调优。所有条目均由Hongqiang Wang共同署名。
发布页同时提供各平台预编译包,其中包含Windows arm64的OpenCL Adreno构建,与本次OpenCL改动方向对应。
来源未给出性能测试数据,因此无法据此判断q3_k在OpenCL设备上的实际加速幅度。
llama.cpp发布b11918版本,发布说明中唯一的代码变更是为OpenCL后端加入q3_k量化格式的初步支持,对应PR #31172。
提交信息显示,改动覆盖q3_k的多种矩阵运算内核,并单独包含面向Adreno GPU的内核调优;Hongqiang Wang在各项提交中共同署名。
发布页未附基准测试或速度对比数据。
OpenCL后端新增的q3_k内核
根据发布说明中的提交条目,本次改动为OpenCL后端加入q3_k的AOS mv、SOA mv与tiled mm,以及面向Adreno的noshuffle gemm/gemv和dp4a gemm。随后一条条目写明对Adreno的q3_k内核进行调优。
- q3_k AOS mv
- q3_k SOA mv与tiled mm
- q3_k noshuffle gemm/gemv(面向Adreno)
- q3_k dp4a gemm(面向Adreno)
- q3_k内核调优(面向Adreno)
发布包中的对应构建
b11918的发布资产中列有Windows arm64(OpenCL Adreno)压缩包,以及Linux arm64与Android arm64的Snapdragon构建(含CPU、Adreno GPU、Hexagon NPU),并附有对应setup guide链接。这些资产与本次OpenCL侧改动方向一致,但发布说明未说明各包是否默认启用相关内核。
- Windows arm64 (OpenCL Adreno)
- Linux arm64 Snapdragon:CPU、Adreno GPU、Hexagon NPU
- Android arm64 Snapdragon:CPU、Adreno GPU、Hexagon NPU