Tags: AndyGrant/Ethereal
Tags
Optimize Accumulator Updates (#193) Use tiling for updates in full refreshes, and partial refreshes. The first test is for partial refreshes. The second is for in both locations. The latter test has a lesser elo value, but it is still an additional speedup. SPRT does not measure the elo magnitudes. ELO | 9.95 +- 5.09 (95%) SPRT | 10.0+0.10s Threads=1 Hash=8MB LLR | 2.95 (-2.94, 2.94) [0.00, 3.00] GAMES | N: 8976 W: 2386 L: 2129 D: 4461 http://chess.grantnet.us/test/30833/ ELO | 7.12 +- 4.16 (95%) SPRT | 10.0+0.10s Threads=1 Hash=8MB LLR | 2.96 (-2.94, 2.94) [0.00, 3.00] GAMES | N: 13136 W: 3367 L: 3098 D: 6671 http://chess.grantnet.us/test/31088/ BENCH : 3,808,521
Tune the PSQT using FRC + Standard data Tests for FRC: ELO | 14.81 +- 7.67 (95%) SPRT | 10.0+0.1s Threads=1 Hash=8MB LLR | 2.99 (-2.94, 2.94) [0.00, 5.00] Games | N: 3568 W: 884 L: 732 D: 1952 http://chess.grantnet.us/test/7199/ ELO | 10.91 +- 6.61 (95%) SPRT | 60.0+0.6s Threads=1 Hash=64MB LLR | 2.99 (-2.94, 2.94) [-1.50, 4.50] Games | N: 3600 W: 668 L: 555 D: 2377 http://chess.grantnet.us/test/7204/ Tests for Standard: ELO | 1.33 +- 2.44 (95%) SPRT | 10.0+0.1s Threads=1 Hash=8MB LLR | 2.98 (-2.94, 2.94) [-3.00, 1.00] Games | N: 28576 W: 5321 L: 5212 D: 18043 http://chess.grantnet.us/test/7200/ ELO | 1.64 +- 2.21 (95%) SPRT | 60.0+0.6s Threads=1 Hash=64MB LLR | 2.96 (-2.94, 2.94) [-3.00, 1.00] Games | N: 24576 W: 3242 L: 3126 D: 18208 http://chess.grantnet.us/test/7205/ BENCH : 4,940,080
Use Syzygy to filter root moves in TB positions Before, when reaching a TB root, we would simply return a move maintaining the WDL. Now, we will search as usual, but exclude moves which fail to maintain the ideal WDL. This behaviour will not apply when running Ethereal with MultiPV > 1 for analysis. This behaviour will also not apply if the user specifically requests 'go searchmoves ...' Testing suggests that this patch is a slowdown, due to the trivial overhead for RootNodes. I am choosing to ignore this minor speed loss, as it should fade with time. BENCH : 4,555,163
Small eval randomization for drawn terminal nodes (#135) Idea from Stockfish The small randomization, using the thread's node count, ensures that when different potential 3-fold lines are available, the search keeps exploring different lines. This helps to discover lines where one side can escape the 3-fold with advantage. This is especially useful at longer TCs. ELO | 1.28 +- 2.10 (95%) SPRT | 12.0+0.12s Threads=1 Hash=8MB LLR | -0.43 (-2.94, 2.94) [0.00, 4.00] Games | N: 49920 W: 11997 L: 11813 D: 26110 http://chess.grantnet.us/viewTest/4797/ ELO | 3.63 +- 2.88 (95%) SPRT | 60.0+0.6s Threads=1 Hash=64MB LLR | 2.97 (-2.94, 2.94) [0.00, 5.00] Games | N: 21050 W: 4092 L: 3872 D: 13086 http://chess.grantnet.us/viewTest/4799/ BENCH : 5,132,900
Cleanup board.x evaluate.x search.x transposition.x Final work for #84 ELO | 3.22 +- 3.63 (95%) SPRT | 10.0+0.1s Threads=1 Hash=8MB LLR | 2.95 (-2.94, 2.94) [-3.00, 1.00] Games | N: 14480 W: 3059 L: 2925 D: 8496 http://chess.grantnet.us/viewTest/3447/ NO FUNCTIONAL CHANGE BENCH : 7,065,845
Tune all linear eval terms using a new tuner Convert tuning into the proper non-search based evaluation as per the original texel tuning. Tune using mini-batch GD with a batch size of 8192 and psuedo random shuffling of the tuning data. ELO | 5.87 +- 4.09 (95%) SPRT | 10.0+0.1s Threads=1 Hash=8MB LLR | 2.97 (-2.94, 2.94) [0.00, 4.00] Games | N: 13440 W: 3376 L: 3149 D: 6915 http://chess.grantnet.us/viewTest/3012/ ELO | 2.80 +- 2.25 (95%) SPRT | 60.0+0.6s Threads=1 Hash=64MB LLR | 2.96 (-2.94, 2.94) [0.00, 4.00] Games | N: 36330 W: 7343 L: 7050 D: 21937 http://chess.grantnet.us/viewTest/3013/ BENCH : 7,503,296
PreviousNext