Stockfish+

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

Moderator: Ras

DrEinstein
Posts: 75
Joined: Wed Sep 15, 2021 8:50 pm
Full name: Albert Einstein

Re: Stockfish+

Post by DrEinstein »

George Sobala wrote: Tue Jan 04, 2022 11:20 am
kranium wrote: Sun Jan 02, 2022 12:49 pm Sorry, I have zero experience compiling for MacOS...
perhaps someone else will be kind enough to produce it.
You have written entirely Windows dependent code in sysinfo/version_helper.h etc so of course it will not compile on Mac. Or Linux.
Yeah, but it's easy to skip that part of the code, and
after fixing one or two errors in the Makefile, compilation with clang isn't a big deal.
Eduard
Posts: 1439
Joined: Sat Oct 27, 2018 12:58 am
Location: Germany
Full name: N.N.

Re: Stockfish+

Post by Eduard »

I am impressed, how good play Stockfish+ MCTS. In the endgame the engine could be a bit better, but in the opening and middlegame it play better than without MCTS.

I always play in autoplay mode on the server (in contrast to some Cherry Pickers) and such a result is really not bad:

Image

Of course, I also tested without MCTS. I didn't lose there either, but I didn't win a game either. That changed when I turned on MCTS.
kranium
Posts: 2130
Joined: Thu May 29, 2008 10:43 am

Re: Stockfish+

Post by kranium »

DrEinstein wrote: Tue Jan 04, 2022 12:07 pm
George Sobala wrote: Tue Jan 04, 2022 11:20 am
kranium wrote: Sun Jan 02, 2022 12:49 pm Sorry, I have zero experience compiling for MacOS...
perhaps someone else will be kind enough to produce it.
You have written entirely Windows dependent code in sysinfo/version_helper.h etc so of course it will not compile on Mac. Or Linux.
Yeah, but it's easy to skip that part of the code, and
after fixing one or two errors in the Makefile, compilation with clang isn't a big deal.
George, would you be kind enough to create an issue on github with whatever information is applicable?
see
https://github.com/FireFather/stockfish-plus
click on Issues at top left
and perhaps then Joachim would be willing to share his solution, either here or there...
DrEinstein
Posts: 75
Joined: Wed Sep 15, 2021 8:50 pm
Full name: Albert Einstein

Re: Stockfish+

Post by DrEinstein »

I can't remember what exactly I have commented out of the (Windows) code (but compiler knows!) and
..main.cpp<->material.cpp...
was a problem in line 41 of the Makefile.
George Sobala
Posts: 44
Joined: Sat Feb 03, 2018 2:42 pm
Location: Yorkshire, England

Re: Stockfish+

Post by George Sobala »

kranium wrote: Tue Jan 04, 2022 1:33 pm
DrEinstein wrote: Tue Jan 04, 2022 12:07 pm
George Sobala wrote: Tue Jan 04, 2022 11:20 am
kranium wrote: Sun Jan 02, 2022 12:49 pm Sorry, I have zero experience compiling for MacOS...
perhaps someone else will be kind enough to produce it.
You have written entirely Windows dependent code in sysinfo/version_helper.h etc so of course it will not compile on Mac. Or Linux.
Yeah, but it's easy to skip that part of the code, and
after fixing one or two errors in the Makefile, compilation with clang isn't a big deal.
George, would you be kind enough to create an issue on github with whatever information is applicable?
see
https://github.com/FireFather/stockfish-plus
click on Issues at top left
and perhaps then Joachim would be willing to share his solution, either here or there...
Done. Simply get rid of the SysInfo stuff.
George Sobala
Posts: 44
Joined: Sat Feb 03, 2018 2:42 pm
Location: Yorkshire, England

Re: Stockfish+

Post by George Sobala »

Also, from the command line (your binary, on Windows) I get exactly the same search output if I set MCTS to true as if I leave it false.
kranium
Posts: 2130
Joined: Thu May 29, 2008 10:43 am

Re: Stockfish+

Post by kranium »

George Sobala wrote: Tue Jan 04, 2022 4:40 pm
kranium wrote: Tue Jan 04, 2022 1:33 pm
DrEinstein wrote: Tue Jan 04, 2022 12:07 pm
George Sobala wrote: Tue Jan 04, 2022 11:20 am
kranium wrote: Sun Jan 02, 2022 12:49 pm Sorry, I have zero experience compiling for MacOS...
perhaps someone else will be kind enough to produce it.
You have written entirely Windows dependent code in sysinfo/version_helper.h etc so of course it will not compile on Mac. Or Linux.
Yeah, but it's easy to skip that part of the code, and
after fixing one or two errors in the Makefile, compilation with clang isn't a big deal.
George, would you be kind enough to create an issue on github with whatever information is applicable?
see
https://github.com/FireFather/stockfish-plus
click on Issues at top left
and perhaps then Joachim would be willing to share his solution, either here or there...
Done. Simply get rid of the SysInfo stuff.
I believe most of the sysinfo stuff is portable
It's a piece of it: the (Windows) version_helper that's non-portable
I'll exclude it with #if defined(_MSC_VER) for the next upload
(which is whenever official Stockfish commits their next change)
Last edited by kranium on Tue Jan 04, 2022 6:07 pm, edited 1 time in total.
kranium
Posts: 2130
Joined: Thu May 29, 2008 10:43 am

Re: Stockfish+

Post by kranium »

George Sobala wrote: Tue Jan 04, 2022 5:16 pm Also, from the command line (your binary, on Windows) I get exactly the same search output if I set MCTS to true as if I leave it false.
Not sure what happened George
I tried it and got different output

Code: Select all

Stockfish+ 020122 by the Stockfish developers (see AUTHORS file)

Compiled using   : g++ (GNUC) 10.2.0 on MinGW64
Compile settings : 64bit BMI2 AVX2 SSE41 SSSE3 SSE2 POPCNT
Build date/time  : 2022-Jan-02 00:00:28

Operating System : Windows 10 Client Or Greater
CPU Brand        : Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz
L1/L2/L3 cache   : 512KB/2MB/16MB
Memory (RAM)     : 32GB
Hyper-Threading  : Yes
NUMA Nodes       : 1
Cores            : 8
Threads          : 16

Large Pages      : Yes

uci
id name Stockfish+ 020122
id author the Stockfish developers (see AUTHORS file)

option name Debug Log File type string default
option name Threads type spin default 1 min 1 max 512
option name Hash type spin default 16 min 1 max 33554432
option name Clear Hash type button
option name Ponder type check default false
option name MultiPV type spin default 1 min 1 max 500
option name Skill Level type spin default 20 min 0 max 20
option name Move Overhead type spin default 10 min 0 max 5000
option name Slow Mover type spin default 100 min 10 max 1000
option name nodestime type spin default 0 min 0 max 10000
option name UCI_Chess960 type check default false
option name UCI_AnalyseMode type check default false
option name UCI_LimitStrength type check default false
option name UCI_Elo type spin default 1350 min 1350 max 2850
option name UCI_ShowWDL type check default false
option name SyzygyPath type string default <empty>
option name SyzygyProbeDepth type spin default 1 min 1 max 100
option name Syzygy50MoveRule type check default true
option name SyzygyProbeLimit type spin default 7 min 0 max 7
option name Use NNUE type check default true
option name EvalFile type string default nn-ac07bd334b62.nnue
option name MCTS type check default false
option name Book1File type string default <empty>
option name Book2File type string default <empty>
option name BestBookMove type check default true
option name BookDepth type spin default 255 min 1 max 255
uciok
go depth 20
info string NNUE evaluation using nn-ac07bd334b62.nnue enabled
info depth 1 seldepth 1 multipv 1 score cp 32 nodes 20 nps 10000 tbhits 0 time 2 pv d2d4
info depth 2 seldepth 2 multipv 1 score cp 93 nodes 47 nps 23500 tbhits 0 time 2 pv d2d4 a7a6
info depth 3 seldepth 3 multipv 1 score cp -7 nodes 243 nps 121500 tbhits 0 time 2 pv d2d4 a7a6 d4d5
info depth 4 seldepth 4 multipv 1 score cp 45 nodes 358 nps 179000 tbhits 0 time 2 pv e2e4 a7a6 c2c4
info depth 5 seldepth 5 multipv 1 score cp 56 nodes 643 nps 214333 tbhits 0 time 3 pv g1f3 a7a6 c2c4
info depth 6 seldepth 6 multipv 1 score cp 90 nodes 1493 nps 497666 tbhits 0 time 3 pv e2e4 d7d5 e4d5
info depth 7 seldepth 7 multipv 1 score cp 33 nodes 4417 nps 883400 tbhits 0 time 5 pv g1f3 d7d5 d2d4 g8f6 c2c4 d5c4 d1a4 c8d7
info depth 8 seldepth 8 multipv 1 score cp 62 nodes 5677 nps 946166 tbhits 0 time 6 pv e2e4 g7g6 d2d4 d7d6 b1c3 f8g7
info depth 9 seldepth 10 multipv 1 score cp 19 nodes 14108 nps 1410800 tbhits 0 time 10 pv d2d4 d7d5 c2c4 e7e6 g2g3 g8f6 f1g2 f8e7 c4d5 e6d5
info depth 10 seldepth 14 multipv 1 score cp 31 nodes 19305 nps 1378928 tbhits 0 time 14 pv d2d4 g8f6 c2c4 e7e6 g1f3 d7d5 g2g3 f8b4 c1d2
info depth 11 seldepth 14 multipv 1 score cp 42 nodes 28160 nps 1482105 tbhits 0 time 19 pv d2d4 g8f6 c2c4 e7e6 g2g3 f8b4 c1d2 b4d2 d1d2 e8g8 f1g2
info depth 12 seldepth 14 multipv 1 score cp 39 nodes 37358 nps 1494320 tbhits 0 time 25 pv d2d4 g8f6 g1f3 d7d5 c2c4 e7e6 g2g3 f8b4 b1c3 e8g8 f1g2 b4e7 c4d5
info depth 13 seldepth 16 multipv 1 score cp 52 nodes 56165 nps 1478026 tbhits 0 time 38 pv e2e4 e7e5 g1f3 b8c6 f1b5 g8f6 e1g1 f8e7 b5c6 d7c6 f1e1 c8g4
info depth 14 seldepth 19 multipv 1 score cp 32 nodes 143937 nps 1547709 tbhits 0 time 93 pv e2e4 c7c5 g1f3 d7d6 f1b5 c8d7 b5d7 d8d7 e1g1 e7e6 c2c3 g8f6 f1e1 f8e7 h2h3 e8g8 c3c4
info depth 15 seldepth 20 multipv 1 score cp 48 nodes 191605 nps 1557764 tbhits 0 time 123 pv d2d4 g8f6 c2c4 c7c6 g1f3 d7d5 e2e3 e7e6 f1d3 d5c4 d3c4 f8e7 b1c3 b7b5
info depth 16 seldepth 21 multipv 1 score cp 48 nodes 273636 nps 1572620 tbhits 0 time 174 pv d2d4 d7d5 c2c4 c7c6 g1f3 g8f6 c4d5 c6d5 b1c3 e7e6 c1f4 f8d6 f4d6 d8d6 f3e5 c8d7 e2e3 e8g8
info depth 17 seldepth 22 multipv 1 score cp 45 nodes 327816 nps 1568497 tbhits 0 time 209 pv d2d4 d7d5 c2c4 e7e6 g1f3 d5c4 e2e3 g8f6 f1c4 c7c5 e1g1 a7a6 c4b3 b7b5 d4c5 d8d1 f1d1 f8c5
info depth 18 seldepth 18 multipv 1 score cp 46 nodes 360659 nps 1581837 tbhits 0 time 228 pv d2d4 d7d5 c2c4 e7e6 g1f3 d5c4 e2e3 g8f6 f1c4 c7c5 e1g1 a7a6 d1c2 b8c6 f1d1 c5d4 e3d4 f8e7
info depth 19 seldepth 22 multipv 1 score cp 45 nodes 399824 nps 1580332 tbhits 0 time 253 pv d2d4 d7d5 c2c4 e7e6 g1f3 d5c4 e2e3 g8f6 f1c4 c7c5 e1g1 a7a6 d4c5 d8c7 c4e2 f8c5 b2b3 e8g8 d1c2
info depth 20 seldepth 26 multipv 1 score cp 45 nodes 940209 nps 1567015 tbhits 0 time 600 pv d2d4 e7e6 c2c4 d7d5 g1f3 g8f6 g2g3 f8b4 c1d2 b4e7 f1g2 e8g8 e1g1 c7c6 d1c2 f6e4 f1c1 b8d7 d2e1
bestmove d2d4 ponder e7e6
setoption name MCTS value true
go depth 20
info string NNUE evaluation using nn-ac07bd334b62.nnue enabled
info depth 1 seldepth 1 multipv 1 score cp 45 nodes 22 nps 7333 tbhits 0 time 3 pv d2d4
info depth 2 seldepth 2 multipv 1 score cp 45 nodes 45 nps 15000 tbhits 0 time 3 pv d2d4 e7e6
info depth 3 seldepth 3 multipv 1 score cp 45 nodes 77 nps 12833 tbhits 0 time 6 pv d2d4 e7e6 c2c4
info depth 4 seldepth 4 multipv 1 score cp 45 nodes 114 nps 19000 tbhits 0 time 6 pv d2d4 e7e6 c2c4 d7d5
info depth 5 seldepth 5 multipv 1 score cp 45 nodes 158 nps 26333 tbhits 0 time 6 pv d2d4 e7e6 c2c4 d7d5 g1f3
info depth 6 seldepth 6 multipv 1 score cp 45 nodes 208 nps 29714 tbhits 0 time 7 pv d2d4 e7e6 c2c4 d7d5 g1f3 g8f6
info depth 7 seldepth 7 multipv 1 score cp 45 nodes 273 nps 39000 tbhits 0 time 7 pv d2d4 e7e6 c2c4 d7d5 g1f3 g8f6 g2g3
info depth 8 seldepth 8 multipv 1 score cp 45 nodes 347 nps 43375 tbhits 0 time 8 pv d2d4 e7e6 c2c4 d7d5 g1f3 g8f6 g2g3 f8b4 c1d2
info depth 9 seldepth 9 multipv 1 score cp 45 nodes 440 nps 55000 tbhits 0 time 8 pv d2d4 e7e6 c2c4 d7d5 g1f3 g8f6 g2g3 f8b4 c1d2
info depth 10 seldepth 10 multipv 1 score cp 45 nodes 564 nps 62666 tbhits 0 time 9 pv d2d4 e7e6 c2c4 d7d5 g1f3 g8f6 g2g3 f8b4 c1d2 b4e7
info depth 11 seldepth 11 multipv 1 score cp 45 nodes 719 nps 79888 tbhits 0 time 9 pv d2d4 e7e6 c2c4 d7d5 g1f3 g8f6 g2g3 f8b4 c1d2 b4e7 f1g2
info depth 12 seldepth 13 multipv 1 score cp 45 nodes 934 nps 93400 tbhits 0 time 10 pv d2d4 e7e6 c2c4 d7d5 g1f3 g8f6 g2g3 f8b4 c1d2 b4e7 f1g2 e8g8 e1g1
info depth 13 seldepth 16 multipv 1 score cp 49 nodes 1812 nps 164727 tbhits 0 time 11 pv d2d4 e7e6 c2c4 d7d5 g1f3 d5c4 e2e3 g8f6 f1c4 a7a6 e1g1 c7c5 d4c5 f8c5 d1d8 e8d8
info depth 14 seldepth 17 multipv 1 score cp 49 nodes 3461 nps 288416 tbhits 0 time 12 pv d2d4 e7e6 c2c4 d7d5 g1f3 d5c4 e2e3 g8f6 f1c4 a7a6 e1g1 c7c5 d4c5 f8c5 d1d8 e8d8 a2a3
info depth 15 seldepth 22 multipv 1 score cp 43 nodes 11978 nps 665444 tbhits 0 time 18 pv d2d4 e7e6 g1f3 g8f6 c2c4 d7d5 g2g3 f8b4 c1d2 b4e7 f1g2 e8g8 e1g1 c7c6 b2b3 f6e4 d1c2 e4d2 b1d2 b8d7
info depth 16 seldepth 20 multipv 1 score cp 43 nodes 21554 nps 862160 tbhits 0 time 25 pv d2d4 e7e6 c2c4 d7d5 g1f3 g8f6 g2g3 f8b4 c1d2 b4e7 f1g2 e8g8 e1g1 c7c6 b2b3 f6e4 d1c2
info depth 17 seldepth 22 multipv 1 score cp 49 nodes 41926 nps 1103315 tbhits 0 time 38 pv d2d4 e7e6 c2c4 d7d5 g1f3 g8f6 g2g3 f8b4 c1d2 b4e7 f1g2 e8g8 e1g1 c7c6 d1c2 a7a5 b2b3 b7b6 f1c1 c8b7 b1c3 b8d7
info depth 18 seldepth 21 multipv 1 score cp 42 nodes 60855 nps 1170288 tbhits 0 time 52 pv d2d4 e7e6 c2c4 d7d5 g1f3 g8f6 g2g3 f8b4 c1d2 b4e7 f1g2 e8g8 e1g1 c7c6 d1c2 a7a5 f1d1 b8d7 a2a3 b7b6 b1c3
info depth 19 seldepth 23 multipv 1 score cp 46 nodes 81025 nps 1266015 tbhits 0 time 64 pv d2d4 e7e6 c2c4 d7d5 g1f3 g8f6 g2g3 f8b4 c1d2 b4e7 f1g2 e8g8 e1g1 c7c6 d1c2 a7a5 b2b3 b7b6 b1c3 b8d7 d2f4 c8b7 f1d1
info depth 20 seldepth 28 multipv 1 score cp 42 nodes 155849 nps 1391508 tbhits 0 time 112 pv d2d4 e7e6 c2c4 d7d5 g1f3 g8f6 c1g5 f8b4 b1c3 e8g8 c4d5 e6d5 e2e3 h7h6 g5h4 b4c3 b2c3 c7c5 f1e2 d8a5 e1g1 f6e4
bestmove d2d4 ponder e7e6
I'll post this in issues on github, easier to read
dkappe
Posts: 1632
Joined: Tue Aug 21, 2018 7:52 pm
Full name: Dietrich Kappe

Re: Stockfish+

Post by dkappe »

kranium wrote: Tue Jan 04, 2022 5:58 pm
George Sobala wrote: Tue Jan 04, 2022 5:16 pm Also, from the command line (your binary, on Windows) I get exactly the same search output if I set MCTS to true as if I leave it false.
Not sure what happened George
I tried it and got different output
Best to clear the hash before the second search.
Fat Titz by Stockfish, the engine with the bodaciously big net. Remember: size matters. If you want to learn more about this engine just google for "Fat Titz".
kranium
Posts: 2130
Joined: Thu May 29, 2008 10:43 am

Re: Stockfish+

Post by kranium »

dkappe wrote: Tue Jan 04, 2022 6:01 pm
kranium wrote: Tue Jan 04, 2022 5:58 pm
George Sobala wrote: Tue Jan 04, 2022 5:16 pm Also, from the command line (your binary, on Windows) I get exactly the same search output if I set MCTS to true as if I leave it false.
Not sure what happened George
I tried it and got different output
Best to clear the hash before the second search.
yes
Clear Hash is a button
so from command prompt it's convenient to use 'ucinewgame'
which calls Search::clear() which includes TT.clear()