AVX version of the q6k vec-dot. (#493)

* AVX version of the q6k vec-dot.

* Use the avx sum.
This commit is contained in:
Laurent Mazare
2023-08-17 20:13:18 +01:00
committed by GitHub
parent 3164cd24fa
commit fc81af1712
2 changed files with 104 additions and 1 deletions

View File

@ -462,7 +462,11 @@ impl GgmlType for BlockQ6K {
const BLCK_SIZE: usize = QK_K;
type VecDotType = BlockQ8K;
#[allow(unreachable_code)]
fn vec_dot(n: usize, xs: &[Self], ys: &[Self::VecDotType]) -> Result<f32> {
#[cfg(target_feature = "avx")]
return super::avx::vec_dot_q6k_q8k(n, xs, ys);
if n % QK_K != 0 {
crate::bail!("vec_dot_q6k_q8k: {n} is not divisible by {QK_K}")
}