Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: Sergei Ivanov
Date: Thu May 9 15:39:57 2019 +0200 Timestamp: 1557409197 Fix cycle detection in presence of repetitions In master search() may incorrectly return a draw score in the following corner case: there was a 2-fold repetition during the game, and the current position can be reached by a move from a repeated one. This case is treated as an upcoming 3-fold repetition, which it is not. Here is a testcase demonstrating the issue (note that the moves after FEN are required). The input: position fen 8/8/8/8/8/8/p7/2k4K b - - 0 1 moves c1b1 h1g1 b1c1 g1h1 c1b1 h1g1 b1a1 g1h1 go movetime 1000 produces the output: [...] info depth 127 seldepth 2 multipv 1 score cp 0 [...] bestmove a1b1 saying that the game will be drawn by repetion. However the other possible move for black, Kb2, avoids repetitions and wins. The patch fixes this behavior. In particular it finds mate in 10 in the above position. STC: LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 10604 W: 2390 L: 2247 D: 5967 Elo +4.69 http://tests.stockfishchess.org/tests/view/5cb373e00ebc5925cf0167bf LTC: LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 19620 W: 3308 L: 3185 D: 13127 Elo +2.18 http://tests.stockfishchess.org/tests/view/5cb3822f0ebc5925cf016b2d Bench is not changed since it does not test positions with history of moves. Bench: 3184182 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: Stefan Geschwentner
Date: Thu May 9 15:25:39 2019 +0200 Timestamp: 1557408339 Less LMR at root Do no LMR for the first four moves if at root node. STC: LLR: 2.95 (-2.94,2.94) [0.50,4.50] Total: 19686 W: 4524 L: 4261 D: 10901 Elo +4.64 http://tests.stockfishchess.org/tests/view/5cd3577b0ebc5925cf04a089 LTC: LLR: 2.95 (-2.94,2.94) [0.00,3.50] Total: 88335 W: 15193 L: 14766 D: 58376 Elo +1.68 http://tests.stockfishchess.org/tests/view/5cd35e600ebc5925cf04a1c3 Bench: 3184182 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: Stefan Geschwentner
Date: Sun May 5 23:18:17 2019 +0200 Timestamp: 1557091097 LMR for captures not cracking alpha Enable LMR for a capture/promotion move which does not seem to have a good chance to fail high according to static eval and value of captured piece. STC: LLR: 2.96 (-2.94,2.94) [0.50,4.50] Total: 40477 W: 9158 L: 8792 D: 22527 Elo +3.14 http://tests.stockfishchess.org/tests/view/5cceedc60ebc5925cf04174f LTC: LLR: 2.94 (-2.94,2.94) [0.00,3.50] Total: 21926 W: 3873 L: 3634 D: 14419 Elo +3.79 http://tests.stockfishchess.org/tests/view/5ccf04310ebc5925cf041ab0 Bench: 3644175 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: VoyagerOne
Date: Sat May 4 13:41:53 2019 +0200 Timestamp: 1556970113 Stat Score reset at rootNode - Bench: 3393330 (#2124) At rootNode reset great great grandchildren stat score i.e (ss + 4)->statScore = 0 STC: (yellow) LLR: -2.96 (-2.94,2.94) [0.50,4.50] Total: 256079 W: 57423 L: 56315 D: 142341 Elo +1.50 http://tests.stockfishchess.org/tests/view/5ccb0c420ebc5925cf03a6a5 LTC: LLR: 2.95 (-2.94,2.94) [0.00,3.50] Total: 61550 W: 10611 L: 10260 D: 40679 Elo +1.98 http://tests.stockfishchess.org/tests/view/5ccbf9d00ebc5925cf03c487 Bench: 3393330 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: Marco Costalba
Date: Thu May 2 19:30:26 2019 +0200 Timestamp: 1556818226 Assorted trivial cleanups 4/2019 No functional change. see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: Joost VandeVondele
Date: Thu May 2 19:22:29 2019 +0200 Timestamp: 1556817749 Simplified shuffle extension version (#2121) only the extension part of the shuffle patch is sufficient to pass [0,3.5] bounds at VLTC as shown by two more tests. http://tests.stockfishchess.org/tests/view/5cc168bc0ebc5925cf02bda8 LLR: 2.95 (-2.94,2.94) [0.00,3.50] Total: 120684 W: 17875 L: 17400 D: 85409 Elo +1.37 http://tests.stockfishchess.org/tests/view/5cc14d510ebc5925cf02bcb5 LLR: 2.95 (-2.94,2.94) [0.00,3.50] Total: 68415 W: 10250 L: 9905 D: 48260 Elo +1.75 this patch proposes to simplify back to this basic and easier to understand version. In case there is a need to run a [-3, 1] VLTC on this one, it can be done, but it is resource intensive, and not needed IMO. Bench: 3388643 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: Joost VandeVondele
Date: Sat Apr 27 20:47:06 2019 +0200 Timestamp: 1556390826 Allow for address sanitizer. (#2119) Properly allow for sanitize=address (-fsanitize=address) as an argument to the Makefile. No functional change see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: Marco Costalba
Date: Sat Apr 27 11:37:51 2019 +0200 Timestamp: 1556357871 Fix bench number of previous patch bench: 3388643 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: Michael Chaly
Date: Sat Apr 27 11:31:55 2019 +0200 Timestamp: 1556357515 Include bishop protection in king Danger evaluation. #2118 Same idea as fisherman's knight protection. passed STC LLR: 2.96 (-2.94,2.94) [0.50,4.50] Total: 17133 W: 3952 L: 3701 D: 9480 Elo +5.09 http://tests.stockfishchess.org/tests/view/5cc3550b0ebc5925cf02dada passed LTC LLR: 2.95 (-2.94,2.94) [0.00,3.50] Total: 37316 W: 6470 L: 6188 D: 24658 Elo +2.63 http://tests.stockfishchess.org/tests/view/5cc3721d0ebc5925cf02dc90 Looking at this 2 ideas being recent clean elo gainers I have a feeling that we can add also rook and queen protection bonuses or overall move this stuff in pieces loop in the same way as we do pieces attacking bonuses on their kingring... :) Thx fisherman for original idea. Bench 3429173 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: MJZ1977
Date: Sat Apr 27 11:25:23 2019 +0200 Timestamp: 1556357123 Shuffle detection #2108 Bench: 3402947 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: Joost VandeVondele
Date: Wed Apr 24 19:51:57 2019 +0200 Timestamp: 1556128317 Remove useless initializations (#2115) Removes two unneeded inits, they are always set before their use later on. No functional change. see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: protonspring
Date: Sat Apr 20 08:34:14 2019 +0200 Timestamp: 1555742054 Remove DistanceRing #2107 Remove the DistanceRing array. This reduces the memory footprint by about 4kb. http://tests.stockfishchess.org/tests/view/5cba35350ebc5925cf020d7f LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 101421 W: 22491 L: 22528 D: 56402 Elo -0.13 No functional change. see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: Joost VandeVondele
Date: Fri Apr 19 17:33:26 2019 +0200 Timestamp: 1555688006 Remove capping in reduction (#2110) Saves two std::min. Bench is unchanged to high depth, but in principle this is a functional change so tested both STC and LTC. passed STC: LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 78193 W: 17220 L: 17210 D: 43763 Elo +0.04 http://tests.stockfishchess.org/tests/view/5cb789540ebc5925cf01b90b passed LTC: LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 93846 W: 15964 L: 15962 D: 61920 Elo +0.01 http://tests.stockfishchess.org/tests/view/5cb8066d0ebc5925cf01c72b Bench: 3402947 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: Joost VandeVondele
Date: Thu Apr 18 16:53:52 2019 +0200 Timestamp: 1555599232 Simplify distance (#2109) Only called with Squares as argument, so remove unused variants. As this is just syntax changes, only verified bench at high depth. No functional change. see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: protonspring
Date: Wed Apr 17 21:13:39 2019 +0200 Timestamp: 1555528419 Remove Movepick::move (#2085) The "move" class variable is Movepick is removed (removes some abstraction) which saves a few assignment operations, and the effects of "filter" is limited to the current move (movePtr). The resulting code is a bit more verbose, but it is also more clear what is going on. This version is NOT tested, but is substantially similar to: STC LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 29191 W: 6474 L: 6367 D: 16350 Elo +1.27 http://tests.stockfishchess.org/tests/view/5ca7aab50ebc5925cf006e50 This is a non-functional simplification. see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: protonspring
Date: Tue Apr 16 23:10:53 2019 +0200 Timestamp: 1555449053 Move pawnsOnSquares to Position (#2100) We can remove the values in Pawns if we just use the piece arrays in Position. This reduces the size of a pawn entry. This simplification passed individually, and in concert with ps_passedcount100 (removes passedCount storage in pawns.). STC LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 19957 W: 4529 L: 4404 D: 11024 Elo +2.18 http://tests.stockfishchess.org/tests/view/5cb3c2d00ebc5925cf016f0d Combo STC LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 17368 W: 3925 L: 3795 D: 9648 Elo +2.60 http://tests.stockfishchess.org/tests/view/5cb3d3510ebc5925cf01709a This is a non-functional simplification. see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: protonspring
Date: Tue Apr 16 16:12:47 2019 +0200 Timestamp: 1555423967 Calculate passedCount real-time #2099 This is a non-functional simplification which removes the passedCount variable in pawns. STC LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 27982 W: 6227 L: 6118 D: 15637 Elo +1.35 http://tests.stockfishchess.org/tests/view/5cb3cdd30ebc5925cf017025 Combo STC LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 17368 W: 3925 L: 3795 D: 9648 Elo +2.60 http://tests.stockfishchess.org/tests/view/5cb3d3510ebc5925cf01709a Non functional test. see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: protonspring
Date: Tue Apr 16 16:09:36 2019 +0200 Timestamp: 1555423776 Remove semiopenFiles in pawns and simplify space #2102 This is a functional simplification. 1. semiopenFiles is removed in pawns and uses the piece arrays in position instead. 2. popcount is removed in space calculations and uses pawn piece count instead. STC LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 33327 W: 7423 L: 7324 D: 18580 Elo +1.03 http://tests.stockfishchess.org/tests/view/5cb4be090ebc5925cf018511 LTC LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 10173 W: 1774 L: 1636 D: 6763 Elo +4.71 http://tests.stockfishchess.org/tests/view/5cb4c5920ebc5925cf018696 bench 3402947 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: Joost VandeVondele
Date: Sat Apr 13 17:17:47 2019 +0200 Timestamp: 1555168667 Remove two useless assignments (#2093) These variables are initialized before their use in the movepicker loop. passed STC: LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 138732 W: 30727 L: 30838 D: 77167 Elo -0.28 http://tests.stockfishchess.org/tests/view/5cb07af40ebc5925cf012c32 No functional change. see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: Joost VandeVondele
Date: Sat Apr 13 17:15:15 2019 +0200 Timestamp: 1555168515 Give penalty for all early quiets of prev. ply passed STC: LLR: 2.94 (-2.94,2.94) [-3.00,1.00] Total: 32884 W: 7283 L: 7184 D: 18417 Elo +1.05 http://tests.stockfishchess.org/tests/view/5cacb1b20ebc5925cf00ce97 passed LTC: LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 22869 W: 3920 L: 3803 D: 15146 Elo +1.78 http://tests.stockfishchess.org/tests/view/5cacbd760ebc5925cf00cfce Bench: 3723099 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: protonspring
Date: Sat Apr 13 16:58:41 2019 +0200 Timestamp: 1555167521 Simplify Connected Pawn Scoring #2090 This is a functional simplification that simplifies connected scoring of pawns. STC LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 37472 W: 8318 L: 8228 D: 20926 Elo +0.83 http://tests.stockfishchess.org/tests/view/5cae74ef0ebc5925cf00f8a5 LTC LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 43035 W: 7366 L: 7281 D: 28388 Elo +0.69 http://tests.stockfishchess.org/tests/view/5caea3b50ebc5925cf00fe1e Bench: 3470173 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: Marco Costalba
Date: Fri Apr 12 13:48:04 2019 +0200 Timestamp: 1555069684 Revert "Shuffle detection #2064" It causes a serious regression hanging a simple fixed depth search. Reproducible with: position fen q1B5/1P1q4/8/8/8/6R1/8/1K1k4 w - - 0 1 go depth 13 The reason is a search tree explosion due to: if (... && depth < 3 * ONE_PLY) extension = ONE_PLY; This is very dangerous code by itself because triggers **at the leafs** and in the above position keeps extending endlessly. In normal games time deadline makes the search to stop sooner or later, but in fixed seacrch we just hang possibly for a very long time. This is not acceptable because 'go depth 13' shall not be a surprise for any position. This patch reverts commit 76f1807baa90eb69f66001d25df2a28533f9406f. and fixes the issue https://github.com/official-stockfish/Stockfish/issues/2091 Bench: 3243738 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: miguel-l
Date: Wed Apr 10 19:35:47 2019 +0200 Timestamp: 1554917747 Extend dangerous passed pawn moves (#2089) Introduce a new search extension when pushing an advanced passed pawn is also suggested by the first killer move. There have been previous tests which have similar ideas, mostly about pawn pushes, but it seems to be overkill to extend too many moves. My idea is to limit the extension to when a move happens to be noteworthy in some other way as well, such as in this case, when it is also a killer move. STC: LLR: 2.96 (-2.94,2.94) [0.50,4.50] Total: 19027 W: 4326 L: 4067 D: 10634 Elo +4.73 http://tests.stockfishchess.org/tests/view/5cac2cde0ebc5925cf00c36d LTC: LLR: 2.94 (-2.94,2.94) [0.00,3.50] Total: 93390 W: 15995 L: 15555 D: 61840 Elo +1.64 http://tests.stockfishchess.org/tests/view/5cac42270ebc5925cf00c4b9 For future tests, it looks like this will interact heavily with passed pawn evaluation. It may be good to try more variants of some of the more promising evaluations tests/tweaks. Bench: 3666092 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: protonspring
Date: Wed Apr 10 19:33:57 2019 +0200 Timestamp: 1554917637 Simplify castlingPath (#2088) Instead of looping through kfrom,kto, rfrom, rto, we can use BetweenBB. This is less lines of code and it is more clear what castlingPath actually is. Personal benchmarks are all over the place. However, this code is only executed when loading a position, so performance doesn't seem that relevant. No functional change. see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers Linux x64 | Author: 31m059
Date: Tue Apr 9 19:35:17 2019 +0200 Timestamp: 1554831317 Raise kingDanger threshold and adjust constant term #2087 The kingDanger term is intended to give a penalty which increases rapidly in the middlegame but less so in the endgame. To this end, the middlegame component is quadratic, and the endgame component is linear. However, this produces unintended consequences for relatively small values of kingDanger: the endgame penalty will exceed the middlegame penalty. This remains true up to kingDanger = 256 (a S(16, 16) penalty), so some of these inaccurate penalties are actually rather large. In this patch, we increase the threshold for applying the kingDanger penalty to eliminate some of this unintended behavior. This was very nearly, but not quite, sufficient to pass on its own. The patch was finally successful by integrating a second kingDanger tweak by @Vizvezdenec, increasing the kingDanger constant term slightly and improving both STC and LTC performance. Where do we go from here? I propose that in the future, any attempts to tune kingDanger coefficients should also consider tuning the kingDanger threshold. The evidence shows clearly that it should not be automatically taken to be zero. Special thanks to @Vizvezdenec for the kingDanger constant tweak. Thanks also to all the approvers and CPU donors who made this possible! STC: LLR: -2.96 (-2.94,2.94) [0.00,4.00] Total: 141225 W: 31239 L: 30846 D: 79140 Elo +0.97 http://tests.stockfishchess.org/tests/view/5cabbdb20ebc5925cf00b86c LTC: LLR: 2.95 (-2.94,2.94) [0.00,4.00] Total: 30708 W: 5296 L: 5043 D: 20369 Elo +2.86 http://tests.stockfishchess.org/tests/view/5cabff760ebc5925cf00c22d Bench: 3445945 see source |