Details
Hexagon: add support for IQ2_XXS and NVFP4 (#31954)
-
ggml-hexagon: IQ2_XXS and NVFP4 tiled repack layouts
-
ggml-hexagon: IQ2_XXS HVX matmul kernel
-
ggml-hexagon: NVFP4 HVX matmul kernel
-
ggml-hexagon: NVFP4 per-tensor scale
-
ggml-hexagon: HMX paths for IQ2_XXS and NVFP4
-
ggml-hexagon: supports_op coverage for NVFP4 and IQ2_XXS
-
fix HMX IQ2_XXS dequant scale underflow in fp16
-
hexagon: IQ2_XXS 2-gather tile decode with compact grid, small-weight tests
-
IQ2_XXS vpopcount sign parity and gather pipelining
-
pipeline IQ2_XXS HMX dequant gathers and add large_w tests
-
hex-iq2-xxs: rebase and cleanup
Remove unused helper functions.
Add lut_size to the overall vtcm required size.
Trim down (way way down) the new tests.
- hex-iq2-xxs: actually trim down the tests
Co-authored-by: Max Krasnyansky maxk@qti.qualcomm.com
Website:
Attestations:
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 24.04 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.5 libraries
- Ubuntu arm64 (CUDA 13) - CUDA 13.5 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:
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.5 DLLs
- Windows arm64 (CUDA 13) - CUDA 13.5 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: