5 more days ! An eternity lmao
Chess Engines binaries for Raspberry Pi 4 Linux 64 bits
Moderators: hgm, Rebel, chrisw
-
- Posts: 253
- Joined: Mon Nov 16, 2020 12:13 pm
- Full name: Manuel Rivera
Re: Chess Engines binaries for Raspberry Pi 4 Linux 64 bits
Raspberry Pi4 bot : https://lichess.org/@/BetterAnalyze
-
- Posts: 135
- Joined: Tue Mar 05, 2019 3:43 pm
- Full name: Archimedes
Re: Chess Engines binaries for Raspberry Pi 4 Linux 64 bits
The executable bit was not set, because it was compiled with Windows (Android NDK r22). The nps are indeed very slow, also with the non static builds. I would say, we don't care about it for the moment.Pi4Chess wrote: ↑Fri Dec 18, 2020 4:43 pmThanks for your help testing this issue Archimedes.Archimedes wrote: ↑Fri Dec 18, 2020 4:22 pmThis builds are static builds.Archimedes wrote: ↑Fri Dec 18, 2020 3:42 pm Could you please test, wether this version works for your environment.
Halogen 9:
https://app.box.com/s/zzaj5to2nlm9baojhdixk92rpfp530zn
The engine is not recognized as an engine when installing in arena. But forcing the path to file and starting the engine it says in a window ;
i Say yes and then it works.... BUT at 990 kns while the complied version i am testing since yesterday does 1990 kns on same position and conditions and with same evaluation score.Code: Select all
/home/xxxxx/SRC2/arm64-v8a/Halogen Executable bit not set. Would you like to set the executable bit and continue? Warning: Executing programs from unknown source can damage your computer.
You binary is 1,8 M while mine is 979 Ko. When using Pedone's armv8 i did not have to do this manipulation and did not have this window.
I don't think -static is the only cause and may be ndk is adressing specific android librairies ONLY while the compiler of Pedone is adressing more universal librairies or at least linux compatible ones ?
Here is another test with Ethereal. Static builds, compiled with Debian and Android NDK r21d.
Ethereal 12.77:
https://app.box.com/s/vcqupotfm9a0h7nt6gxn2bi7i7uosz5g
-
- Posts: 253
- Joined: Mon Nov 16, 2020 12:13 pm
- Full name: Manuel Rivera
Re: Chess Engines binaries for Raspberry Pi 4 Linux 64 bits
Same as Halogen (bit set) but kns is around 940 for this build while my 12.75 build is 1050 kns average. Don't know if its compilation or version that explains the speed difference.Archimedes wrote: ↑Fri Dec 18, 2020 11:10 pm The executable bit was not set, because it was compiled with Windows (Android NDK r22). The nps are indeed very slow, also with the non static builds. I would say, we don't care about it for the moment.
Here is another test with Ethereal. Static builds, compiled with Debian and Android NDK r21d.
Ethereal 12.77:
https://app.box.com/s/vcqupotfm9a0h7nt6gxn2bi7i7uosz5g
It's better than for Halogen if you changed something in compilation options.
Raspberry Pi4 bot : https://lichess.org/@/BetterAnalyze
-
- Posts: 135
- Joined: Tue Mar 05, 2019 3:43 pm
- Full name: Archimedes
Re: Chess Engines binaries for Raspberry Pi 4 Linux 64 bits
So we are on the right way.
With static builds it works also in your environment. The missing executable bit comes from file handling with windows (i made the zip archive with windows). Don't care about it.
The difference in speed comes from different compiler settings. And, may be, from different compilers. May be you are using the native compiler flag, which is always a good idea when compiling for yourself, for your hardware (but could result in compatibility issues with other devices). And if you produces profile guided optimization (pgo) builds, they are also faster than builds without it.
Last but not least, i did a short test with DroidFish. The non static build of Ethereal 12.77 shows me after 10 seconds around 550 kns from the start position. The static build shows me after 10 seconds only around 535 kns from the start position. The non static build is definitely faster, than the static build. The settings between the compiles are identical.
With static builds it works also in your environment. The missing executable bit comes from file handling with windows (i made the zip archive with windows). Don't care about it.
The difference in speed comes from different compiler settings. And, may be, from different compilers. May be you are using the native compiler flag, which is always a good idea when compiling for yourself, for your hardware (but could result in compatibility issues with other devices). And if you produces profile guided optimization (pgo) builds, they are also faster than builds without it.
Last but not least, i did a short test with DroidFish. The non static build of Ethereal 12.77 shows me after 10 seconds around 550 kns from the start position. The static build shows me after 10 seconds only around 535 kns from the start position. The non static build is definitely faster, than the static build. The settings between the compiles are identical.
-
- Posts: 253
- Joined: Mon Nov 16, 2020 12:13 pm
- Full name: Manuel Rivera
Re: Chess Engines binaries for Raspberry Pi 4 Linux 64 bits
Ok nice. I always use the available makefile and i only remove eventually some flags that do not work like -m64 -mpopcnt when they give error.Archimedes wrote: ↑Sat Dec 19, 2020 12:40 am So we are on the right way.
With static builds it works also in your environment. The missing executable bit comes from file handling with windows (i made the zip archive with windows). Don't care about it.
The difference in speed comes from different compiler settings. And, may be, from different compilers. May be you are using the native compiler flag, which is always a good idea when compiling for yourself, for your hardware (but could result in compatibility issues with other devices). And if you produces profile guided optimization (pgo) builds, they are also faster than builds without it.
I don't use the native flag unless it is already in the makefile. Common optimizing flags are -O3 and -flto
Raspberry Pi4 bot : https://lichess.org/@/BetterAnalyze
-
- Posts: 135
- Joined: Tue Mar 05, 2019 3:43 pm
- Full name: Archimedes
Re: Chess Engines binaries for Raspberry Pi 4 Linux 64 bits
I do not using the makefiles, because there is not always support for Android inside. Sometimes there is no makefile present. And every makefile is different structured. I need a system, which is independent of makefiles. But i always take a look in to the makefile and often in to the source code also for source dependent compiler definitions and so on.
I'm using -O3, -flto, -fno-stack-protector and -fomit-frame-pointer as target independent compiler settings, which works with all chess engines so far. Android NDKs ndk-build do the rest (hopefully with a good balance between runtime performance and compatibility).
I'm using -O3, -flto, -fno-stack-protector and -fomit-frame-pointer as target independent compiler settings, which works with all chess engines so far. Android NDKs ndk-build do the rest (hopefully with a good balance between runtime performance and compatibility).
-
- Posts: 253
- Joined: Mon Nov 16, 2020 12:13 pm
- Full name: Manuel Rivera
Re: Chess Engines binaries for Raspberry Pi 4 Linux 64 bits
I understand. Then you could possibly see the engines i did not managed to compile for armv8/rpi4 (they are not in the list) and try yourself with -static optionArchimedes wrote: ↑Sat Dec 19, 2020 1:22 am I do not using the makefiles, because there is not always support for Android inside. Sometimes there is no makefile present. And every makefile is different structured. I need a system, which is independent of makefiles. But i always take a look in to the makefile and often in to the source code also for source dependent compiler definitions and so on.
I'm using -O3, -flto, -fno-stack-protector and -fomit-frame-pointer as target independent compiler settings, which works with all chess engines so far. Android NDKs ndk-build do the rest (hopefully with a good balance between runtime performance and compatibility).
But the main purpose of this topic is to show that rpi4 is a nice and working arch for their engines so that authors themselves include rpi4 platform in their releases. If we could give them an easy tutorial to build working rpi4 exec since many already do armv8 executables for android, with ndk, or clang/gcc, it would be awesome.
Last edited by Pi4Chess on Sat Dec 19, 2020 2:02 am, edited 2 times in total.
Raspberry Pi4 bot : https://lichess.org/@/BetterAnalyze
-
- Posts: 253
- Joined: Mon Nov 16, 2020 12:13 pm
- Full name: Manuel Rivera
Re: Chess Engines binaries for Raspberry Pi 4 Linux 64 bits
Added 4 compilations today :
-Stashbot 25 (the last compilation i did as v25 was actually v24.7)
-Halogen 9 (I have put its net since i don't know if the net is in the binary or not.... net is 3Mb and binary is less than 1Mb)
-SugarAI 1.10 (included the experience file of more than 170mb and last SF net)
-SugarAI ICCF 1.10 (This version is for correspondence play and it seems it has some dedicated uci options). copy the experience file + net from the other Sugar folder
30 days download file : https://pixeldrain.com/u/bmbZNXy6
They will be added into the collection targz later when updated.
-Stashbot 25 (the last compilation i did as v25 was actually v24.7)
-Halogen 9 (I have put its net since i don't know if the net is in the binary or not.... net is 3Mb and binary is less than 1Mb)
-SugarAI 1.10 (included the experience file of more than 170mb and last SF net)
-SugarAI ICCF 1.10 (This version is for correspondence play and it seems it has some dedicated uci options). copy the experience file + net from the other Sugar folder
30 days download file : https://pixeldrain.com/u/bmbZNXy6
They will be added into the collection targz later when updated.
Raspberry Pi4 bot : https://lichess.org/@/BetterAnalyze
-
- Posts: 135
- Joined: Tue Mar 05, 2019 3:43 pm
- Full name: Archimedes
Re: Chess Engines binaries for Raspberry Pi 4 Linux 64 bits
It's not a big deal, i can help you, but i think, it is better, you ask me for compilations, which makes problems, die to compilation errors, which i have already compiled successfull. Die to the amount of compilations you've done, i lost the track.
Chess Engines for Android
-
- Posts: 253
- Joined: Mon Nov 16, 2020 12:13 pm
- Full name: Manuel Rivera
Re: Chess Engines binaries for Raspberry Pi 4 Linux 64 bits
That's nice In the list you just provided I did not managed to compile : Seer (compiled but not working) , Scorpio (this is a big factory omg even on windows 7 i couldn't make it work properly), Xiphos, Tucano, Koivisto, Zurichess,Cheng 4, Frankygo, Hakkapellita, Topple, Hippocampe, monchester, ceechess.Archimedes wrote: ↑Sat Dec 19, 2020 3:02 amIt's not a big deal, i can help you, but i think, it is better, you ask me for compilations, which makes problems, die to compilation errors, which i have already compiled successfull. Die to the amount of compilations you've done, i lost the track.
Chess Engines for Android
And others that are not in your list and i couldn't compile : Winter, Fabchess.
Raspberry Pi4 bot : https://lichess.org/@/BetterAnalyze