The llama.cpp project released build b10777, which includes optimizations to the SYCL backend for Q4_K multi-column matrix-vector multiplication (MMVQ). The update focuses on reducing redundant computational work through weight unpacking and activation reuse strategies.
- Optimizes Q4_K weight unpacking and reuses data between destination columns.
- Implements subgroup reuse of activations for small N values (N=2..4) across two output rows.
- Gates the two-row reuse pattern specifically for N=2 to improve efficiency.
- Updates the magic number threshold to Q4_K_MMVQ_ROW_PAIR_MIN_NROWS=6272 and adds performance tests for Q4_K MUL_MAT coverage.
This release provides pre-built binaries for macOS, Linux, Android, Windows, and openEuler across various hardware backends including CPU, CUDA, ROCm, Vulkan, OpenVINO, and SYCL.