Demolito 20181029 released

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

User avatar
lucasart
Posts: 3232
Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart

Re: Demolito 20181029 released

Post by lucasart »

Guenther wrote: Tue Nov 06, 2018 6:43 pm
lucasart wrote: Tue Nov 06, 2018 2:55 pm
Guenther wrote: Tue Nov 06, 2018 2:06 pm Great news, a pity the 'old' compile does not run on my 2009 quadcore (no popcount, up to SSE4.1 available).
How about this one?
Sorry, this one crashes too. At least it reacts to the uci command now (from cmd), but after giving ucinewgame or go, it crashes.
Can you run this command:

Code: Select all

demolito.exe search 12 1
And report the node count.

As flr the uci, I think your uci conversation is incorrect, because you forgot the position command. Try it in a GUI instead.
Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
User avatar
lucasart
Posts: 3232
Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart

Re: Demolito 20181029 released

Post by lucasart »

Volker Pittlik wrote: Tue Nov 06, 2018 4:04 pm I replaced clang by gcc. Result looks reichlich demoliert:

Code: Select all

volker@vlk-office:~/Demolito$ ./make.sh
/tmp/cc3Z6aMJ.ltrans0.ltrans.o: In Funktion »pos_print.constprop.3«:
<artificial>:(.text+0x23a): Warnung: undefinierter Verweis auf »square«
<artificial>:(.text+0x24e): Warnung: undefinierter Verweis auf »bb_test«

... dozens of line with similar warnings...

<artificial>:(.text.startup+0xff4): Warnung: undefinierter Verweis auf »file_of«
<artificial>:(.text.startup+0x1003): Warnung: undefinierter Verweis auf »relative_rank_of«
collect2: error: ld returned 1 exit status
./make.sh: Zeile 7: search: Befehl nicht gefunden
volker@vlk-office:~/Demolito$ 
Gruss
Yoh didn't type what I told you…
Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
User avatar
lucasart
Posts: 3232
Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart

Re: Demolito 20181029 released

Post by lucasart »

CMCanavessi wrote: Tue Nov 06, 2018 4:36 pm
lucasart wrote: Tue Nov 06, 2018 1:47 pm POSIX (Linux, MacOSX, FreeBSD):
Please compile yourself:

Code: Select all

git clone https://github.com/lucasart/Demolito.git
cd Demolito
./make.sh ./demolito
Tips:
- Replace clang by gcc in make.sh if you have gcc but not clang installed (will be a bit slower).
- remove -DPEXT in make.sh if you don't have a PEXT capable CPU.

Windows
Compiles provided. Use the intel or amd depending on your CPU. Try the standard one, and if it fails, try the '_old' one (without PEXT).
Great, thanx a lot for the new version Lucas. Hope this new version doesn't have the problem of crashing in my Ryzen processor like the older one had. BTW, what is the difference between the "AMD" and "Intel" binaries? Only PEXT (bmi2)?
Use the *amd.exe file. If it fails, use the *amd_old.exe
Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
User avatar
lucasart
Posts: 3232
Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart

Re: Demolito 20181029 released

Post by lucasart »

Fuddur wrote: Tue Nov 06, 2018 4:27 pm Where is android compilation??
Not there yet, but soon. I changed my system from Ubuntu to Arch Linux. As a result, some software is much more time consuming to install because you need to compile everything from source (and resolving recursively the dependancies). Was a huge pain for mingw alreadly, the cross compiler that allowed me to make Windows compiles. I'll give the Android cross compiler a try when I have time. Hopefully it's not as painful as mingw.
Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
User avatar
lucasart
Posts: 3232
Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart

Re: Demolito 20181029 released

Post by lucasart »

Graham Banks wrote: Tue Nov 06, 2018 7:47 pm Thanks Lucas.

Great to see that you're still working on improving Demolito. :)

Any idea how much stronger this new version might be?
Approximately 50 elo in my testing. But that's 8+0.08 bullet tc, and using a 5 ply (2.5 moves) quasi random opening book. Using longer tc shrinks elo differences, and so do longer book lines. On the other hand, time management was improved in tournament tc (where Demolito sucked horribly before), so your mileage should be ok.
Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
User avatar
lucasart
Posts: 3232
Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart

Re: Demolito 20181029 released

Post by lucasart »

BTW, what is the difference between the "AMD" and "Intel" binaries? Only PEXT (bmi2)?
It's not about PEXT. Both amd.exe and intel.exe have PEXT, whereas amd_old.exe and intel_old.exe dont have PEXT (only POPCNT).

Each compile is made for (compatibility), and tuned for (speed), a specific architecture. Intel: nehalem(old), haswell(new). AMD: amdfam10(old), bdver4(new).
Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
User avatar
CMCanavessi
Posts: 1142
Joined: Thu Dec 28, 2017 4:06 pm
Location: Argentina

Re: Demolito 20181029 released

Post by CMCanavessi »

lucasart wrote: Wed Nov 07, 2018 12:57 am
BTW, what is the difference between the "AMD" and "Intel" binaries? Only PEXT (bmi2)?
It's not about PEXT. Both amd.exe and intel.exe have PEXT, whereas amd_old.exe and intel_old.exe dont have PEXT (only POPCNT).

Each compile is made for (compatibility), and tuned for (speed), a specific architecture. Intel: nehalem(old), haswell(new). AMD: amdfam10(old), bdver4(new).
Ok, here are some (speed) tests I did taking the time it takes to get to depth 22:

Processor is a Ryzen 7 1700 8 core/16 thread

AMD build: won't run, crashes right after starting it, can't even get to write "uci" (and that may mean it will NOT run on _any_ AMD processor)
AMD_old build: info depth 22 score cp 13 time 109055 nodes 146866649
Intel build: info depth 22 score cp 13 time 170255 nodes 146866649 ===> here we see the stupidly slow PEXT implementation of AMD
Intel_old build: info depth 22 score cp 13 time 106356 nodes 146866649

So ironically, fastest would be "intel_old" on this particular AMD processor.


Some interesting read about compiler flags, Zen and previous processors: https://wiki.gentoo.org/wiki/Ryzen#GCC
Follow my tournament and some Leela gauntlets live at http://twitch.tv/ccls
Volker Pittlik
Posts: 619
Joined: Wed Mar 08, 2006 9:10 pm
Location: Murten / Morat, Switzerland
Full name: Volker Pittlik

Re: Demolito 20181029 released

Post by Volker Pittlik »

lucasart wrote: Wed Nov 07, 2018 12:09 am ...
Yoh didn't type what I told you…
Then copy and paste must be broken here.

I stop it.
User avatar
lucasart
Posts: 3232
Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart

Re: Demolito 20181029 released

Post by lucasart »

Volker Pittlik wrote: Wed Nov 07, 2018 6:38 am
lucasart wrote: Wed Nov 07, 2018 12:09 am ...
Yoh didn't type what I told you…
Then copy and paste must be broken here.

I stop it.
PEBKAC ?
Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
User avatar
Guenther
Posts: 4605
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: Demolito 20181029 released

Post by Guenther »

lucasart wrote: Wed Nov 07, 2018 12:08 am
Guenther wrote: Tue Nov 06, 2018 6:43 pm
lucasart wrote: Tue Nov 06, 2018 2:55 pm
Guenther wrote: Tue Nov 06, 2018 2:06 pm Great news, a pity the 'old' compile does not run on my 2009 quadcore (no popcount, up to SSE4.1 available).
How about this one?
Sorry, this one crashes too. At least it reacts to the uci command now (from cmd), but after giving ucinewgame or go, it crashes.
Can you run this command:

Code: Select all

demolito.exe search 12 1
And report the node count.

As flr the uci, I think your uci conversation is incorrect, because you forgot the position command. Try it in a GUI instead.
Ofc I have tried a Gui too (WB), but it crashes instantly no matter if I use WB2UCI or Polyglot.
Also crashes ofc in cutechess-cli and cutechess Gui.

Code: Select all

Indexing opening suite...
23 >Demolito_181029-64(0): uci
59 >Ethereal_1055-64(1): uci
71 <Demolito_181029-64(0): id name Demolito 2018-10-29
72 <Demolito_181029-64(0): id author lucasart
73 <Demolito_181029-64(0): option name UCI_Chess960 type check default false
74 <Demolito_181029-64(0): option name Hash type spin default 1 min 1 max 1048576
75 <Demolito_181029-64(0): option name Threads type spin default 1 min 1 max 63
76 <Demolito_181029-64(0): option name Contempt type spin default 10 min -100 max 100
78 <Demolito_181029-64(0): option name Time Buffer type spin default 60 min 0 max 1000
79 <Demolito_181029-64(0): uciok
80 >Demolito_181029-64(0): setoption name Hash value 512
81 >Demolito_181029-64(0): isready
81 <Demolito_181029-64(0): readyok
112 <Ethereal_1055-64(1): id name Ethereal 10.55
112 <Ethereal_1055-64(1): id author Andrew Grant
112 <Ethereal_1055-64(1): option name Hash type spin default 16 min 1 max 65536
112 <Ethereal_1055-64(1): option name Threads type spin default 1 min 1 max 2048
113 <Ethereal_1055-64(1): option name MoveOverhead type spin default 100 min 0 max 10000
113 <Ethereal_1055-64(1): option name SyzygyPath type string default <empty>
113 <Ethereal_1055-64(1): option name SyzygyProbeDepth type spin default 0 min 0 max 127
114 <Ethereal_1055-64(1): uciok
115 >Ethereal_1055-64(1): setoption name Hash value 512
115 >Ethereal_1055-64(1): setoption name SyzygyPath value C:\Syzygy_5
115 >Ethereal_1055-64(1): isready
115 <Ethereal_1055-64(1): info string set Hash to 512MB
152 <Ethereal_1055-64(1): info string found 145 tablebases
152 <Ethereal_1055-64(1): info string set SyzygyPath to C:\Syzygy_5
152 <Ethereal_1055-64(1): readyok
Started game 1 of 10 (Demolito_181029-64 vs Ethereal_1055-64)
197 >Demolito_181029-64(0): ucinewgame
197 >Demolito_181029-64(0): position startpos
197 >Ethereal_1055-64(1): ucinewgame
197 >Ethereal_1055-64(1): position startpos
198 >Demolito_181029-64(0): position startpos moves g1f3
198 >Ethereal_1055-64(1): position startpos moves g1f3
198 >Ethereal_1055-64(1): position startpos moves g1f3 f7f5
198 >Demolito_181029-64(0): position startpos moves g1f3 f7f5
199 >Demolito_181029-64(0): position startpos moves g1f3 f7f5 c2c4
199 >Ethereal_1055-64(1): position startpos moves g1f3 f7f5 c2c4
199 >Ethereal_1055-64(1): position startpos moves g1f3 f7f5 c2c4 g8f6
199 >Demolito_181029-64(0): position startpos moves g1f3 f7f5 c2c4 g8f6
201 >Demolito_181029-64(0): position startpos moves g1f3 f7f5 c2c4 g8f6 g2g3
201 >Ethereal_1055-64(1): position startpos moves g1f3 f7f5 c2c4 g8f6 g2g3
201 >Ethereal_1055-64(1): position startpos moves g1f3 f7f5 c2c4 g8f6 g2g3 g7g6
202 >Demolito_181029-64(0): position startpos moves g1f3 f7f5 c2c4 g8f6 g2g3 g7g6
202 >Demolito_181029-64(0): isready
Terminating process of engine Demolito_181029-64(0)
204 >Ethereal_1055-64(1): isready
763 <Ethereal_1055-64(1): readyok
Finished game 1 (Demolito_181029-64 vs Ethereal_1055-64): 0-1 {White disconnects}
Are you sure this is a no popcount compile because you suddenly said it is a popcount later in the thread??
...whereas amd_old.exe and intel_old.exe dont have PEXT (only POPCNT).
at least running the command above gives a result from a batch

Code: Select all

demolito_181029-64.exe search 12 1 >out.txt
...
kn/s: 816
total = 17979183
https://rwbc-chess.de

trollwatch:
Chessqueen + chessica + AlexChess + Eduard + Sylwy