An AI agent wrote a missing Arm kernel and made llama.cpp prompt processing 6.5x faster

Llama.cpp: 6.5x faster prompt processing on Arm with a NEON kernel

llama.cpp's tiled K-quant matmul had inner kernels only for AVX-512 VNNI, AVX2, and AVX, so on Arm, formats like IQ3_M fell back to re-unpacking weights for every dot product. A 164-line NEON SDOT kernel, written by an AI agent, fixes that: IQ3_M jumps from 11.5 to 74.5 tokens/s on Neoverse N1, and other low-bit formats gain 1.6x to 5.9x. Generation speed is unchanged, and the patch hasn't been submitted upstream.

The Arm figures are still well below the x86 reference. What bounds them now is not profiled.

More from this day

2026-11-13