Closed rwbc closed 3 years ago
Hi Guenther,
I added a version "_OLD_HW" not using hardware popcount and not using HW bit scan. It is about 20% slower than the version with hardware support. I optimized it a little to gain this result. I use the bitSanForeward by Kim Walisch, the Brian Kernighan version of pop count for sparcely populated bitboards and the SWAR Popcount by Donald Knuth for higher populated popcount.
Please give me an input, if this works for you and then I will close this issue. I will not forget to add a make file, but this will take a while.
Thanks Volker! You can close the issue now :) (see output from cmd below)
uci
id name Qapla 0.1.01
id author Volker B÷hm
option name Hash type spin default 32 min 1 max 16000
Read: ./KPK.btb
original size: 20772 compressed size: 10298 comressed to: 49%
uciok
ucinewgame
isready
readyok
position startpos
go infinite
info time 20 nodes 1 depth 1 score cp -15 pv a2a3
info time 20 nodes 2 depth 1 score cp 10 pv b2b3
info time 20 nodes 4 depth 1 score cp 40 pv d2d3
info time 20 nodes 5 depth 1 score cp 50 pv e2e3
info time 20 nodes 12 depth 1 score cp 60 pv d2d4
info time 20 nodes 13 depth 1 score cp 70 pv e2e4
info time 20 nodes 18 depth 1 score cp 82 pv b1c3
info time 20 nodes 20 depth 1 currmove g1h3 currmovenumber 20 hashfull 0 nps 1000
info time 20 nodes 20 depth 1 score cp 82 pv b1c3
info time 20 nodes 43 depth 2 score cp 0 pv b1c3 b8c6
info time 20 nodes 81 depth 2 score cp 0 pv b1c3 b8c6
info time 20 nodes 143 depth 3 score cp 82 pv b1c3 b8c6 g1f3
info time 20 nodes 604 depth 3 score cp 82 pv b1c3 b8c6 g1f3
info time 20 nodes 1143 depth 4 score cp 0 pv b1c3 b8c6 g1f3 g8f6
info time 20 nodes 2158 depth 4 score cp 0 pv b1c3 b8c6 g1f3 g8f6
info time 30 nodes 4207 depth 5 score cp 62 pv b1c3 b8c6 d2d4 g8f6 e2e4
info time 30 nodes 13041 depth 5 score cp 62 pv b1c3 b8c6 d2d4 g8f6 e2e4
info time 50 nodes 23467 depth 6 score cp 0 pv b1c3 b8c6 d2d4 d7d5 g1f3 g8f6
info time 90 nodes 55624 depth 6 score cp 0 pv b1c3 b8c6 d2d4 d7d5 g1f3 g8f6
info time 130 nodes 89837 depth 7 score cp 37 pv b1c3 b8c6 d2d4 d7d5 g1f3 g8f6 c1f4
info time 250 nodes 195458 depth 7 score cp 37 pv b1c3 b8c6 d2d4 d7d5 g1f3 g8f6 c1f4
info time 300 nodes 239013 depth 8 score cp 0 pv b1c3 b8c6 d2d4 d7d5 g1f3 g8f6 c1f4 c8f5
info time 850 nodes 684664 depth 8 score cp 0 pv b1c3 b8c6 d2d4 d7d5 g1f3 g8f6 c1f4 c8f5
info time 1030 nodes 831205 depth 9 currmove b1c3 currmovenumber 0 hashfull 74 nps 806995
info time 1610 nodes 1303466 depth 9 score cp 35 pv b1c3 d7d5 g1f3 g8f6 d2d4 b8c6 c1f4 c8f5 e2e3
info time 2010 nodes 1650677 depth 9 score cp 35 pv b1c3 d7d5 g1f3 g8f6 d2d4 b8c6 c1f4 c8f5 e2e3
info time 2040 nodes 1670668 depth 10 currmove b1c3 currmovenumber 0 hashfull 135 nps 818955
info time 2940 nodes 2422709 depth 10 score cp 0 pv b1c3 d7d5 d2d4 g8f6 g1f3 c8f5 h2h3 b8c6 g2g4 f5e6
info time 3050 nodes 2514552 depth 10 currmove e2e4 currmovenumber 1 hashfull 193 nps 824443
info time 4060 nodes 3351548 depth 10 currmove e2e4 currmovenumber 1 hashfull 243 nps 825504
info time 5070 nodes 4204666 depth 10 currmove e2e4 currmovenumber 2 hashfull 288 nps 829323
info time 5500 nodes 4579753 depth 10 score cp 13 pv e2e4 d7d5 e4d5 g8f6 b1c3 f6d5 g1f3 b8c6 d2d4 e7e6
info time 6080 nodes 5040972 depth 10 currmove e2e3 currmovenumber 4 hashfull 340 nps 829107
info time 7090 nodes 5854215 depth 10 currmove d2d3 currmovenumber 5 hashfull 408 nps 825700
info time 8100 nodes 6651483 depth 10 currmove a2a3 currmovenumber 7 hashfull 469 nps 821171
info time 9110 nodes 7451986 depth 10 currmove a2a4 currmovenumber 12 hashfull 523 nps 818001
info time 10120 nodes 8269147 depth 10 currmove c2c4 currmovenumber 14 hashfull 568 nps 817109
info time 11130 nodes 9077376 depth 10 currmove g1f3 currmovenumber 19 hashfull 610 nps 815577
info time 11360 nodes 9262839 depth 10 score cp 13 pv e2e4 d7d5 e4d5 g8f6 b1c3 f6d5 g1f3 b8c6 d2d4 e7e6
info time 12140 nodes 9942306 depth 11 currmove e2e4 currmovenumber 0 hashfull 636 nps 818971
info time 13150 nodes 10801032 depth 11 currmove e2e4 currmovenumber 0 hashfull 657 nps 821371
info time 14160 nodes 11643379 depth 11 currmove e2e4 currmovenumber 0 hashfull 686 nps 822273
info time 15170 nodes 12494323 depth 11 currmove e2e4 currmovenumber 0 hashfull 710 nps 823621
Hi again, Volker
I see you are making good progress :) Would you mind adding a non popcnt compilation for older hardware and/or a simple makefile, then I could compile it myself? (Mainly using gcc/clang under msys2 - I never touch VC and I hate cmake, sorry)
Guenther