]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commitdiff
ggml-cpu: reduce asm calls for hsum (#14037)
authorAaron Teo <redacted>
Wed, 18 Jun 2025 17:10:08 +0000 (01:10 +0800)
committerGitHub <redacted>
Wed, 18 Jun 2025 17:10:08 +0000 (18:10 +0100)
Signed-off-by: Aaron Teo <redacted>
ggml/src/ggml-cpu/simd-mappings.h

index 2e3669c0186c989982b6162fbec197066914e7e1..e42364c59aa109179c072164cff7102d25190c01 100644 (file)
@@ -944,10 +944,8 @@ static inline void __lsx_f16x4_store(ggml_fp16_t * x, __m128 y) {
     for (int i = 0; i < offset; ++i) {              \
         x[i] = vec_add(x[i], x[offset + i]);        \
     }                                               \
-    res = vec_extract(x[0], 0) +                    \
-          vec_extract(x[0], 1) +                    \
-          vec_extract(x[0], 2) +                    \
-          vec_extract(x[0], 3);                     \
+    float32x4_t tmp = x[0] + vec_reve(x[0]);        \
+    res = tmp[0] + tmp[1];                          \
 }
 
 #define GGML_F32_VEC        GGML_F32x4