-
Notifications
You must be signed in to change notification settings - Fork 134
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Build fails on Termux / aarch64 #413
Comments
Hello, Please check if specifying |
Hi, thanks! Yes,
|
Yes As far as performance goes, This particular issue's complete resolution might require being able to compile and run the tests; but otherwise, things seem to work; thanks! |
Are you comparing scalar functions? |
5 times difference is too much. |
I'm comparing the sleef's non-scalar versions with the libm's scalar versions. On x86_64, the speeds are comparable; however, on aarch64, the simd equivalents for |
So you are comparing different functions. That’s not fair comparison. |
Depending on the CPU micro architecture, the FPU may not be vectorized internally. You should be careful when comparing performance. |
https://gist.github.com/digikar99/5c103a9c017c49d6cf9d9c5cfde3e60c
That could be it: are any of these features supposed to work (wrt performance) with arm_neon.h? Or, could you point to any resources for
|
The pointers are being incremented:
Or am I committing some human error by misreading something?
If I actually comment out the gcc -O2 -fno-vectorize -S sin.c -lm && cat sin.s
|
I was wrong in the last comment. |
sin scalar : 0.366 on ODROID-N2 |
Oops, that was a typo in the gist; the code downstream was 5000. Could you share the output of Edit: found the cpu details - not much of an idea what's wrong then! I'll see if this is reproducible with other owners of the device! Thanks for your time! |
Could you also confirm if you used Termux or some other way? |
I don't have a computer that runs Android. |
Well, okay, even on another device it is slow (this time, ~40x!). But tried on Debian noroot - and the performance is as expected (sleef is faster). Also of note is the output of
It is true that in Termux, the "usual" root is not at "/" - so, if the build process assumes "/" to be the root, then I may be that some essential files are not being found and hence the difference. Another observation: Some lines of `grep -n -A50 'Sleef_sinf4_u10' libsleef.txt`
|
I have no idea, but looks like a similar problem to the following one. |
Hi, thank you for this library!
I was looking to see if I could use this library for a project, and wanted to check the performance differences on an aarch64 android device I own. For this, I'm using Termux, and encountered the following errors on
make
. I think it's related to linking libm, but not sure where exactly the fix goes, or if there is a non-trivial amount of work required to make this work on Termux; will let you know if I find the fix.See terminal output of `make`.
The text was updated successfully, but these errors were encountered: