SSE Check Failing on android/aarch64
- Dominant language
- C++
- Stars
- 878
- Forks
- 526
- Avg merge
- 12d 19h
- Merged PRs (30d)
- 1
Description
Hello!
The check for sse2 (lines below) is failing on android/aarch64 (specifically Termux on Android). It incorrectly detects that SSE2 is available (which is most certainly is not). I suspect the problem lies in using clang-9 vs gcc-9...
I tested on an RPi running linux (aarch64) with GCC-9 and it seemed to detect properly.
https://github.com/dmlc/dmlc-core/blob/ebcaa42d0b7271265e6a02ff468c6753a8fbecdb/CMakeLists.txt#L187-L190
Likewise, the Makefile makes an implicit assumption that one is running on Intel.
https://github.com/dmlc/dmlc-core/blob/ebcaa42d0b7271265e6a02ff468c6753a8fbecdb/Makefile#L20-L27
This is in stark contrast to rabit where at least in the Makefile it detects architectures (although, I would argue that the detection logic should really be the other way around: if the detected ARCH is Intel, then + -msse2; else: -march=native)
https://github.com/dmlc/rabit/blob/74bf00a5ab4594f1695a8ea960394ce89f4a44d0/Makefile#L20-L25
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.