llama.cpp/ggml/src/ggml-cpu
Alberto Cabrera Pérez dbb852b549
ggml-cpu: arm64: q4_K repack gemm and gemv implementations (i8mm) (#16739)
* Enabled q4_K_8x8_q8_K path on ARM

* wip: I8mm qs multiplication, pending bias

* cpu : arm : REPACK gemm q4_K8x8 implementation

Signed-off-by: Alberto Cabrera <alberto.cabrera@liquid.ai>

* Guard gemm with proper features, improved superblock scale and min calc

Signed-off-by: Alberto Cabrera <alberto.cabrera@liquid.ai>

* cpu: arm: Implemented REPACK gemv for Q4_K

Signed-off-by: Alberto Cabrera <alberto.cabrera@liquid.ai>

* Removed completed TODO

* Fixed missing guards when selecting optimal repack type for Q4_K

Signed-off-by: Alberto Cabrera <alberto.cabrera@liquid.ai>

* Fixed macro guard for gemv

* Fixed wrong comment in GEMV

* Fixed warning for unused variable

* vdotq_s32 -> ggml_vdotq_s32

Signed-off-by: Alberto Cabrera <alberto.cabrera@liquid.ai>

* Clang-format issues

* Apply suggestions from code review

Co-authored-by: Diego Devesa <slarengh@gmail.com>

* Removed unnecessary GGML_UNUSED

* Fixed guards in q4_k gemm and gemv (repack)

---------

Signed-off-by: Alberto Cabrera <alberto.cabrera@liquid.ai>
Co-authored-by: Diego Devesa <slarengh@gmail.com>
2025-11-24 13:08:11 +02:00
..
amx ggml : fix unaligned access in AMX code (#16315) 2025-10-06 16:05:27 +03:00
arch ggml-cpu: arm64: q4_K repack gemm and gemv implementations (i8mm) (#16739) 2025-11-24 13:08:11 +02:00
cmake ggml : build backends as libraries (#10256) 2024-11-14 18:04:35 +01:00
kleidiai kleidiai: fix zero-size array declaration (#17240) 2025-11-20 11:45:49 +02:00
llamafile llamafile: PowerPC Sgemm Optimization (#15558) 2025-08-26 23:35:25 +08:00
spacemit ggml : fix SpaceMit IME array out-of-bounds in task assignment (#16629) 2025-10-17 13:01:23 +03:00
CMakeLists.txt ggml: add RISC-V cpu-feats (#17461) 2025-11-24 13:07:14 +02:00
arch-fallback.h ggml-cpu: arm64: q4_K repack gemm and gemv implementations (i8mm) (#16739) 2025-11-24 13:08:11 +02:00
binary-ops.cpp cpu: de-duplicate some of the operators and refactor (ggml/1144) 2025-03-30 08:33:31 +03:00
binary-ops.h cpu: de-duplicate some of the operators and refactor (ggml/1144) 2025-03-30 08:33:31 +03:00
common.h ggml : refactor forward_dup for cpu backend (#16062) 2025-09-19 06:31:56 +02:00
ggml-cpu-impl.h ggml : LoongArch fixes (#16958) 2025-11-03 08:40:02 +02:00
ggml-cpu.c ggml : add ops SOFTPLUS, EXPM1, TRI, SOLVE_TRI, CUMSUM (#17063) 2025-11-13 20:54:47 +02:00
ggml-cpu.cpp ggml: riscv: add riscv spacemit backend (#15288) 2025-09-29 17:50:44 +03:00
hbm.cpp ggml-cpu : split arch-specific implementations (#13892) 2025-06-09 16:47:13 +02:00
hbm.h ggml-cpu : split arch-specific implementations (#13892) 2025-06-09 16:47:13 +02:00
ops.cpp ggml : Fix transposed SOLVE_TRI result (#17323) 2025-11-20 12:58:21 +02:00
ops.h ggml : add ops SOFTPLUS, EXPM1, TRI, SOLVE_TRI, CUMSUM (#17063) 2025-11-13 20:54:47 +02:00
quants.c llama : add gpt-oss (#15091) 2025-08-05 22:10:36 +03:00
quants.h llama : add gpt-oss (#15091) 2025-08-05 22:10:36 +03:00
repack.cpp ggml-cpu: arm64: q4_K repack gemm and gemv implementations (i8mm) (#16739) 2025-11-24 13:08:11 +02:00
repack.h ggml : repack block_iq4_nlx8 (#14904) 2025-08-13 11:09:39 +03:00
simd-mappings.h ggml : remove useless and error-prone variadic macros (#17399) 2025-11-20 11:18:27 +01:00
traits.cpp ggml : fix fallback to CPU for ununsupported ops (#15118) 2025-08-06 14:37:35 +02:00
traits.h ggml : fix fallback to CPU for ununsupported ops (#15118) 2025-08-06 14:37:35 +02:00
unary-ops.cpp ggml : add ops SOFTPLUS, EXPM1, TRI, SOLVE_TRI, CUMSUM (#17063) 2025-11-13 20:54:47 +02:00
unary-ops.h ggml : add ops SOFTPLUS, EXPM1, TRI, SOLVE_TRI, CUMSUM (#17063) 2025-11-13 20:54:47 +02:00
vec.cpp ggml-cpu : add RISC-V vector intrinsic support for silu and cvar operations (#17227) 2025-11-13 13:13:32 +01:00
vec.h ggml-cpu:add RISC-V RVV (Zvfh) optimization for FP16 vector scaling (#17314) 2025-11-20 08:09:18 +02:00