llama.cpp 為 ARM SVE 補上 q6_K GEMM 256 位核心
llama.cpp 合併 PR #27472,為 ggml-cpu 後端加入 ARM SVE 256 位版本的 gemm_q6_K_8x8_q8_K 核心,使 q6_K GEMM 在支援 SVE 的 ARM CPU 上有了新的實現路徑。該 PR 經過多輪 review:刪除 pg16_8、把 switch 改成 if,並將 q8_k_blocklen 標記為 UNUSED,以避免非 i8mm 編譯告警。
原標題:b11968
閱讀原文
| 評分 | 42 / 45(平均 43,門檻 60) |
| 狀態 | 未入選 |
|---|
原文
ggml-cpu: SVE 256 bit implementation of gemm_q6_K_8x8_q8_K kernel ( #27472 )
q6_k GEMM working
cleanup
review comments
review comment addressed - removed pg16_8
incorporated the review comments - replaced switch with if and other points
marking q8_k_blocklen UNUSEDto disable warning for non-i8mm cases
Website:
https://llama.app
Attestations:
https://github.com/ggml-org/llama.cpp/attestations/60928592
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 評分43
llama.cpp 發布建置 b11811,為 KleidiAI 後端新增 Q8_0 的 SVE dotprod GEMV 與 SVE i8mm GEMM 核心(#30808),即面向 Arm 平台的量化運算加速。
llama.cpp releasesAI 評分44
llama.cpp 發布建置 b11604,為 KleidiAI 加入 SME2 指令集的 Q4_K 與 Q6_K 矩陣乘支援,補丁編號 #29219,提交者來自 Arm。SME2 屬於 Armv9 的矩陣擴充套件,這項改動面向支援該指令集的 Arm CPU,用於加速這兩種常用量化格式的矩陣乘法。同一版本中,macOS Apple Silicon 的 KleidiAI 啟用建置被標記為 DISABLED,openEuler 也有一項標註 DISABLED;
llama.cpp releasesAI 評分43
llama.cpp 發布 b11515,主要變更是 SYCL 後端為 Q5_K 量化補上重排佈局的 MMVQ 核心,並加入融合 GLU(#29375),面向 Intel GPU 的量化推理。建置矩陣照舊覆蓋 macOS/iOS、Linux、Windows、Android 與 openEuler,包含 CUDA 12/13、ROCm 10.0、Vulkan、OpenVINO、SYCL FP32/FP16 等後端;
llama.cpp releasesAI 評分45
llama.cpp 在 b11971 建置中為 OpenCL 後端新增面向 Adreno GPU 的分塊 q4_K GEMM,並讓 batch 大於 1 時的分塊 q4_K lm_head 通過分塊 GEMM 執行。改動還把分塊 dp4a q4_K GEMM 拆到獨立檔案,並補充 dp4a 測試;提交由 Qualcomm 工程師共同署名,標註 Codex 輔助。
llama.cpp releasesAI 評分45
llama.cpp 發布 b11786 建置,ggml-cpu 後端的 f32 gelu_quick 與 geglu_quick 改為不依賴 fp16 查表直接計算,同時保留 GGML_GELU_QUICK_FP16 表路徑,並新增 VXE 的 gelu_quick 路徑。該版本還為 f32 CPU 核心補充 test-gelu-quick 測試,並從其中移除 inf/nan 輸入。