]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commit
kleidiai: Add SME vs SME2 distinction in kernel dispatch (#25478)
authorRajendra Matcha <redacted>
Thu, 16 Jul 2026 15:57:04 +0000 (21:27 +0530)
committerGitHub <redacted>
Thu, 16 Jul 2026 15:57:04 +0000 (08:57 -0700)
commitf15bd6090166569428e79b9d5304f23c411773e1
treeb4bd657294b48cf7c495eeb4e507d00bbc946b4f
parentb15ca938ad00aa6b3ee6c2edda7363fd02826b18
kleidiai: Add SME vs SME2 distinction in kernel dispatch (#25478)

The current integration treats SME as a single capability (CPU_FEATURE_SME)
with no distinction between SME(v1) and SME2. The kernels dispatched under
CPU_FEATURE_SME use SME2-specific instructions, making dispatch incorrect
on SME(v1)-only hardware.

We introduce build-time and runtime distinction between SME and SME2, and
wire SME(v1) and SME2 kernels based on actual hardware support.
ggml/include/ggml-cpu.h
ggml/src/ggml-cpu/CMakeLists.txt
ggml/src/ggml-cpu/arch/arm/cpu-feats.cpp
ggml/src/ggml-cpu/ggml-cpu.c
ggml/src/ggml-cpu/ggml-cpu.cpp
ggml/src/ggml-cpu/kleidiai/kernels.cpp
ggml/src/ggml-cpu/kleidiai/kernels.h
ggml/src/ggml-cpu/kleidiai/kleidiai.cpp