llama.cpp
llama.cpp copied to clipboard
No output after commit 84d9015 on Android
Discussed in https://github.com/ggerganov/llama.cpp/discussions/234
Originally posted by ShouNichi March 17, 2023
When git checkout 84d9015
and make
, there will be no output (only the model loading message) in termux.
git checkout 63fd76f
will produce a fully-functional binary.
I've moved this to issues. Please provide sample output from the working build and the non-working build.
From #234:
On another android device it will spit out error messages (at commit 84d9015) like
ggml.c:1364:25: warning: call to undeclared function 'vdotq_s32'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
int32x4_t p_0 = vdotq_s32(vdupq_n_s32(0), v0_0ls, v1_0ls);
^
ggml.c:1364:19: error: initializing 'int32x4_t' (vector of 4 'int32_t' values) with an expression of incompatible type 'int'
int32x4_t p_0 = vdotq_s32(vdupq_n_s32(0), v0_0ls, v1_0ls);
^ ~~~~~~~~~
ggml.c:1365:19: error: initializing 'int32x4_t' (vector of 4 'int32_t' values) with an expression of incompatible type 'int'
int32x4_t p_1 = vdotq_s32(vdupq_n_s32(0), v0_1ls, v1_1ls);
^ ~~~~~~~~~
ggml.c:1367:13: error: assigning to 'int32x4_t' (vector of 4 'int32_t' values) from incompatible type 'int'
p_0 = vdotq_s32(p_0, v0_0hs, v1_0hs);
^ ~~~~~~
ggml.c:1368:13: error: assigning to 'int32x4_t' (vector of 4 'int32_t' values) from incompatible type 'int'
p_1 = vdotq_s32(p_1, v0_1hs, v1_1hs);
^ ~~~~~~
1 warning and 4 errors generated.
make: *** [Makefile:182: ggml.o] Error 1
and the latest commit would work just file, so I assume it is a device specific issue. On the original device, even with the fix/latest commit, it refuses to work. The not-working output is terminal output.txt
and the normal output is... just normal output, with things generating after the loading process.
The latest commit should include the changes from https://github.com/ggerganov/llama.cpp/pull/139 which are supposed to avoid the usage of vdotq_s32
if it isn’t available, but maybe a usage snuck in somewhere?
The latest commit should include the changes from #139 which are supposed to avoid the usage of
vdotq_s32
if it isn’t available, but maybe a usage snuck in somewhere?
~Probably. Well, the problematic device is a Samsung Note 9. Don't know whether this info helps.~ No idea about how to help debugging. Any suggestions?
system_info: n_threads = 4 / 8 | AVX = 0 | AVX2 = 0 | AVX512 = 0 | FMA = 0 | NEON = 1 | ARM_FMA = 1 | F16C = 0 | FP16_VA = 1 | WASM_SIMD = 0 | BLAS = 0 | SSE3 = 0 | VSX = 0 |
freshly cloned.txt