The CPU backend (src/backend/cpu/) has optimized paths for NEON and AVX2, but no SVE (Scalable Vector Extension) support. SVE is needed for AWS Graviton3/4 and other modern ARM servers.
What to do:
- Create
src/backend/cpu/tq_sve.c with stub implementations of the key kernel functions (quantize, dequantize, dot product).
- Each stub should simply call the existing generic C fallback — this sets up the scaffolding for future SVE intrinsics.
- Add SVE feature detection in the backend dispatch logic and wire up the stubs.
- Guard with
#if defined(__ARM_FEATURE_SVE).
Files to touch: src/backend/cpu/tq_sve.c (new), src/backend/cpu/tq_dispatch.c or equivalent dispatch file.
The CPU backend (
src/backend/cpu/) has optimized paths for NEON and AVX2, but no SVE (Scalable Vector Extension) support. SVE is needed for AWS Graviton3/4 and other modern ARM servers.What to do:
src/backend/cpu/tq_sve.cwith stub implementations of the key kernel functions (quantize, dequantize, dot product).#if defined(__ARM_FEATURE_SVE).Files to touch:
src/backend/cpu/tq_sve.c(new),src/backend/cpu/tq_dispatch.cor equivalent dispatch file.