Spaces:
Running
Running
ggml-cpu: Fix build with sve (llama/12059)
Browse files* ggml-cpu: Fix build with sve
Signed-off-by: Molly Sophia <[email protected]>
* ggml-cpu: Remove unused variable in sve q3_k vec dot
Signed-off-by: Molly Sophia <[email protected]>
---------
Signed-off-by: Molly Sophia <[email protected]>
ggml/src/ggml-cpu/ggml-cpu-quants.c
CHANGED
|
@@ -5265,6 +5265,7 @@ void ggml_vec_dot_q3_K_q8_K(int n, float * restrict s, size_t bs, const void * r
|
|
| 5265 |
|
| 5266 |
#if defined(__ARM_FEATURE_SVE)
|
| 5267 |
|
|
|
|
| 5268 |
uint32_t utmp[4];
|
| 5269 |
|
| 5270 |
const int8_t m32 = 32;
|
|
@@ -5276,7 +5277,6 @@ void ggml_vec_dot_q3_K_q8_K(int n, float * restrict s, size_t bs, const void * r
|
|
| 5276 |
const svuint8_t m1_sv = svlsl_n_u8_x(svptrue_b8(), m0_sv, 1);
|
| 5277 |
const svuint8_t m2_sv = svlsl_n_u8_x(svptrue_b8(), m0_sv, 2);
|
| 5278 |
const svuint8_t m3_sv = svlsl_n_u8_x(svptrue_b8(), m0_sv, 3);
|
| 5279 |
-
svbool_t pred_s32 = svnot_b_z (svptrue_b32(), svptrue_pat_b32(SV_VL4));
|
| 5280 |
|
| 5281 |
float sum = 0;
|
| 5282 |
|
|
@@ -5289,7 +5289,7 @@ void ggml_vec_dot_q3_K_q8_K(int n, float * restrict s, size_t bs, const void * r
|
|
| 5289 |
const int8_t * restrict q8_sv = y[i].qs;
|
| 5290 |
|
| 5291 |
// Set up scales
|
| 5292 |
-
|
| 5293 |
utmp[3] = ((aux[1] >> 4) & kmask2) | (((aux[2] >> 6) & kmask1) << 4);
|
| 5294 |
utmp[2] = ((aux[0] >> 4) & kmask2) | (((aux[2] >> 4) & kmask1) << 4);
|
| 5295 |
utmp[1] = (aux[1] & kmask2) | (((aux[2] >> 2) & kmask1) << 4);
|
|
|
|
| 5265 |
|
| 5266 |
#if defined(__ARM_FEATURE_SVE)
|
| 5267 |
|
| 5268 |
+
uint32_t aux[3];
|
| 5269 |
uint32_t utmp[4];
|
| 5270 |
|
| 5271 |
const int8_t m32 = 32;
|
|
|
|
| 5277 |
const svuint8_t m1_sv = svlsl_n_u8_x(svptrue_b8(), m0_sv, 1);
|
| 5278 |
const svuint8_t m2_sv = svlsl_n_u8_x(svptrue_b8(), m0_sv, 2);
|
| 5279 |
const svuint8_t m3_sv = svlsl_n_u8_x(svptrue_b8(), m0_sv, 3);
|
|
|
|
| 5280 |
|
| 5281 |
float sum = 0;
|
| 5282 |
|
|
|
|
| 5289 |
const int8_t * restrict q8_sv = y[i].qs;
|
| 5290 |
|
| 5291 |
// Set up scales
|
| 5292 |
+
memcpy(aux, x[i].scales, 12);
|
| 5293 |
utmp[3] = ((aux[1] >> 4) & kmask2) | (((aux[2] >> 6) & kmask1) << 4);
|
| 5294 |
utmp[2] = ((aux[0] >> 4) & kmask2) | (((aux[2] >> 4) & kmask1) << 4);
|
| 5295 |
utmp[1] = (aux[1] & kmask2) | (((aux[2] >> 2) & kmask1) << 4);
|