diff options
author | Georgi Gerganov <ggerganov@gmail.com> | 2024-05-18 13:40:39 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-05-18 20:40:39 +1000 |
commit | 511182eabb36f6ec9776e2b3c4d7e16d93d0ac0d (patch) | |
tree | 267174dd58c2113dde3c412ea6a4bfe393258c32 /ggml.c | |
parent | 133d99c59980139f5bb75922c8b5fca67d7ba9b8 (diff) |
android : use "ci-android" branch for CI (#7341)
* android : use "ci-android" branch for CI
* ggml : disable SIMD exp and silu for 32-bit ARM
ggml-ci
* android : do not fetch, use add_subdirectory instead
* cmake : provide binary dir
Diffstat (limited to 'ggml.c')
-rw-r--r-- | ggml.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -2076,7 +2076,7 @@ inline static float ggml_silu_f32(float x) { return x/(1.0f + expf(-x)); } -#if defined(__ARM_NEON) +#if defined(__ARM_NEON) && defined(__aarch64__) // adapted from arm limited optimized routine // the maximum error is 1.45358 plus 0.5 ulps @@ -2288,7 +2288,7 @@ static void ggml_vec_silu_f32(const int n, float * y, const float * x) { for (; i + 3 < n; i += 4) { _mm_storeu_ps(y + i, ggml_v_silu(_mm_loadu_ps(x + i))); } -#elif defined(__ARM_NEON) +#elif defined(__ARM_NEON) && defined(__aarch64__) for (; i + 3 < n; i += 4) { vst1q_f32(y + i, ggml_v_silu(vld1q_f32(x + i))); } @@ -2335,7 +2335,7 @@ static ggml_float ggml_vec_soft_max_f32(const int n, float * y, const float * x, #endif sum += (ggml_float)_mm_cvtss_f32(val); } -#elif defined(__ARM_NEON) +#elif defined(__ARM_NEON) && defined(__aarch64__) for (; i + 3 < n; i += 4) { float32x4_t val = ggml_v_expf(vsubq_f32(vld1q_f32(x + i), vdupq_n_f32(max))); |