Closed sroelants closed 3 weeks ago
Simplify logic slightly, and start checking TT move for legality.
Mostly necessary for LazySMP, which is causing way more TT collisions, for some reason. (e.g., https://chess.samroelants.com/test/375/)
With the legality check in place, we have 0 crashes again! (https://chess.samroelants.com/test/383/)
Technically, the bit of extra work we're doing is gonna cost us 2-3 elo, but that seems to be offset by the fact that the LazySMP refactor might gain us 2-3 elo as well.
Non-regression for is_legal + LazySMP:
is_legal
Elo | -1.52 +- 2.49 (95%) SPRT | 8.0+0.08s Threads=1 Hash=16MB LLR | -0.12 (-2.94, 2.94) [-5.00, 0.00] Games | N: 25144 W: 7047 L: 7157 D: 10940 Penta | [376, 2788, 6355, 2676, 377] https://chess.samroelants.com/test/384/
I'll leave the test running, but happy to merge as is.
bench 6393411
Simplify logic slightly, and start checking TT move for legality.
Mostly necessary for LazySMP, which is causing way more TT collisions, for some reason. (e.g., https://chess.samroelants.com/test/375/)
With the legality check in place, we have 0 crashes again! (https://chess.samroelants.com/test/383/)
Technically, the bit of extra work we're doing is gonna cost us 2-3 elo, but that seems to be offset by the fact that the LazySMP refactor might gain us 2-3 elo as well.
Non-regression for
is_legal
+ LazySMP:I'll leave the test running, but happy to merge as is.
bench 6393411