diff options
author | Kawrakow <iwankawrakow@gmail.com> | 2025-04-30 10:45:43 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-04-30 10:45:43 +0200 |
commit | 4c2bee0bedbf8f46a4d36ba66508d872a47ee28c (patch) | |
tree | 8ecf8b34b1d71783bd9622ba348126ded20e65db | |
parent | 9ba362706c998902752caf31d99fe077ed7d4faa (diff) |
Fix IQK_FA_ALL_QUANTS on AVX2 (#360)
* Fix IQK_FA_ALL_QUANTS on AVX2
* Make it also work, not just compile
---------
Co-authored-by: Iwan Kawrakow <iwan.kawrakow@gmail.com>
-rw-r--r-- | ggml/src/iqk/iqk_mul_mat.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/ggml/src/iqk/iqk_mul_mat.cpp b/ggml/src/iqk/iqk_mul_mat.cpp index 5f916584..5e49089a 100644 --- a/ggml/src/iqk/iqk_mul_mat.cpp +++ b/ggml/src/iqk/iqk_mul_mat.cpp @@ -16076,8 +16076,13 @@ struct HelperIQ4nl final : public BaseHelper<step> { constexpr static int block_size_q = QK8_0; #else HelperIQ4nl(const char * data, int stride) : Base(data, stride) {} +#ifdef HAVE_FANCY_SIMD using block_q8 = block_q8_2; constexpr static int block_size_q = QK8_2; +#else + using block_q8 = block_q8_0; + constexpr static int block_size_q = QK8_0; +#endif #endif // Needed for v * softmax(k * q) @@ -16974,7 +16979,11 @@ struct FlashQKfp32 { #ifdef __aarch64__ MAKE_FUNCS(mul_mat_qX_0_q8_0<DequantizerIQ4NL, nq); #else +#ifdef HAVE_FANCY_SIMD MAKE_FUNCS(mul_mat_qX_1_q8_2_T<IQ4_NL_Unpacker, nq); +#else + MAKE_FUNCS(mul_mat_qX_0_q8_0_T<IQ4_NL_Unpacker, nq); +#endif #endif } #endif |