Caissa icon indicating copy to clipboard operation
Caissa copied to clipboard

Please add ARMv9.2, SVE2, Dot Product and Neon support

Open Chess321 opened this issue 1 year ago • 1 comments

It's sad that it's not possible to compile the newest version on Android and Linux devices.

Chess321 avatar Apr 04 '24 12:04 Chess321

Please define "it's not possible". Can you provide exact repro steps, how are you compiling, on what machine, etc.? The code compiles fine for aarch64 on master branch:

witek902@ampere-arm-test:~/Caissa$ cd build/
witek902@ampere-arm-test:~/Caissa/build$ cmake -DCMAKE_BUILD_TYPE=Final ..
-- The C compiler identification is GNU 10.2.1
-- The CXX compiler identification is GNU 10.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
* Current build type: Final
* Current architecture: aarch64-neon
-- Configuring done
-- Generating done
-- Build files have been written to: /home/witek902/Caissa/build
witek902@ampere-arm-test:~/Caissa/build$ make caissa
Scanning dependencies of target backend
[  3%] Building CXX object src/backend/CMakeFiles/backend.dir/Bitboard.cpp.o
...
[ 87%] Building CXX object src/backend/CMakeFiles/backend.dir/syzygy/tbprobe.cpp.o
[ 90%] Linking CXX static library ../../lib/libbackend.a
[ 90%] Built target backend
Scanning dependencies of target caissa
[ 93%] Building CXX object src/frontend/CMakeFiles/caissa.dir/Main.cpp.o
[ 96%] Building CXX object src/frontend/CMakeFiles/caissa.dir/UCI.cpp.o
[100%] Linking CXX executable ../../bin/caissa
[100%] Built target caissa
witek902@ampere-arm-test:~/Caissa/build$ ./bin/caissa 
Caissa 1.18 ARM NEON by Michal Witanowski
info string Loaded neural network: /home/witek902/Caissa/build/bin/eval-41.pnn

Notice Current architecture: aarch64-neon in CMake log and Caissa 1.18 ARM NEON version when running the engine. This was tested on Ampere Altra machine on Google Compute.

Witek902 avatar Apr 08 '24 22:04 Witek902