AISpot

llama.cpp OpenCL 新增 Adreno q4_K 分塊 GEMM

llama.cpp releases版本更新地端推論開源

llama.cpp 在 b11971 建置中為 OpenCL 後端新增面向 Adreno GPU 的分塊 q4_K GEMM,並讓 batch 大於 1 時的分塊 q4_K lm_head 通過分塊 GEMM 執行。改動還把分塊 dp4a q4_K GEMM 拆到獨立檔案,並補充 dp4a 測試;提交由 Qualcomm 工程師共同署名,標註 Codex 輔助。

原標題:b11971
閱讀原文

評分45 / 45(平均 45,門檻 60)
狀態未入選

原文

opencl: add tiled q4_k GEMM for adreno ( #30412 ) opencl: run the tiled q4_K lm_head through a tiled GEMM at batch > 1 opencl: split tiled dp4a q4_k gemm into its own file and test for dp4a Assisted-by: Codex Co-authored-by: Li He [email protected] Website: https://llama.app Attestations: https://github.com/ggml-org/llama.cpp/attestations/61033347 macOS/iOS: macOS Apple Silicon (arm64) macOS Apple Silicon (arm64, KleidiAI enabled) DISABLED macOS Intel (x64) iOS XCFramework Linux: Ubuntu x64 (CPU) Ubuntu arm64 (CPU) Ubuntu s390x (CPU) Ubuntu 26.04 s390x (CPU) Ubuntu 26.04 s390x (zDNN) Ubuntu x64 (Vulkan) Ubuntu arm64 (Vulkan) Ubuntu x64 (CUDA 12) - CUDA 12.8 libraries Ubuntu x64 (CUDA 13) - CUDA 13.4 libraries Ubuntu arm64 (CUDA 13) - CUDA 13.4 libraries Ubuntu x64 (ROCm 10.0) Ubuntu x64 (OpenVINO) Ubuntu x64 (SYCL FP32) Ubuntu x64 (SYCL FP16) Linux arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Android: Android arm64 (CPU) Android arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Windows: Windows x64 (CPU) Windows arm64 (CPU) Windows arm64 (OpenCL Adreno) Windows x64 (CUDA 12) - CUDA 12.4 DLLs Windows x64 (CUDA 13) - CUDA 13.4 DLLs Windows arm64 (CUDA 13) - CUDA 13.4 DLLs Windows x64 (Vulkan) Windows arm64 (Vulkan) Windows x64 (OpenVINO) Windows x64 (SYCL) Windows x64 (ROCm 10.0) openEuler: DISABLED openEuler x86 (310p) openEuler x86 (910b, ACL Graph) openEuler aarch64 (310p) openEuler aarch64 (910b, ACL Graph) UI: UI

相關報導

llama.cpp releasesAI 評分45

llama.cpp 為 OpenCL 新增 cooperative-k dp4a GEMM

llama.cpp 建置 b11741 在 OpenCL 後端為 q4_0、q4_k、q6_k 三種量化格式加入 cooperative-k dp4a GEMM,並修復對齊問題。這意味著在 OpenCL 上執行這些 4bit、6bit 量化模型的裝置可以用上新的矩陣乘實現。該版本同時更新了 macOS、Linux、Windows、Android 多平台建置,覆蓋 CUDA 12/13、ROCm 10.0、Vulkan、SYCL 等後端。

llama.cpp releasesAI 評分39

llama.cpp OpenCL 後端新增多個小批次 GEMM 變體並修復越界讀

llama.cpp 建置 b11763 為 OpenCL 後端補上多個面向小批次的 GEMM/GEMV 核心變體,並修復 mul_mv_mxfp4_f32_flat 的越界讀取。新增項包括 q4_k dp4a GEMM 的小批次變體、mul_mm_f16_f32_l4_lm 的窄化變體,以及大 M 時 gemv_noshuffle_q1_0_f32 的單 subgroup 變體,並按 workgroup 大小限制 q4_0 mc3 的 subgroup 數量。