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 Jun 22 09:57:07 2019 +0200 Timestamp: 1561190227 Make the debug counters thread safe. needed to use them in a threaded run. 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: Vizvezdenec
Date: Fri Jun 21 10:05:50 2019 +0200 Timestamp: 1561104350 Rewrite "More bonus for free passed pawn" -removes wideUnsafeSquares bitboard -removes a couple of bitboard operations -removes one if operator -updates comments so they actually represent what this part of code is doing now. passed non-regression STC http://tests.stockfishchess.org/tests/view/5d0c1ae50ebc5925cf0aa8db LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 16892 W: 3865 L: 3733 D: 9294 Elo +2.72 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: Vizvezdenec
Date: Thu Jun 20 16:52:02 2019 +0200 Timestamp: 1561042322 More bonus for free passed pawn Give even more bonus to passed pawn if adjacent squares to its path are not attacked. passed STC http://tests.stockfishchess.org/tests/view/5d08c9b10ebc5925cf0a6630 LLR: 2.95 (-2.94,2.94) [0.50,4.50] Total: 175197 W: 39859 L: 38816 D: 96522 Elo +2.07 passed LTC http://tests.stockfishchess.org/tests/view/5d0ab8240ebc5925cf0a8fe4 LLR: 2.95 (-2.94,2.94) [0.00,3.50] Total: 92928 W: 16124 L: 15682 D: 61122 Elo +1.65 Bench: 3398333 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 Lahoz
Date: Thu Jun 20 16:39:22 2019 +0200 Timestamp: 1561041562 Change multi-cut pruning condition Use comparison of eval with beta to predict potential cutNodes. This allows multi-cut pruning to also prune possibly mislabeled Pv and NonPv nodes. STC: LLR: 2.95 (-2.94,2.94) [0.50,4.50] Total: 54305 W: 12302 L: 11867 D: 30136 Elo +2.78 http://tests.stockfishchess.org/tests/view/5d048ba50ebc5925cf0a15e8 LTC: LLR: 2.95 (-2.94,2.94) [0.00,3.50] Total: 189512 W: 32620 L: 31904 D: 124988 Elo +1.31 http://tests.stockfishchess.org/tests/view/5d04bf740ebc5925cf0a17f0 Normally I would think such changes are risky, specially for PvNodes, but after trying a few other versions, it seems this version is more sound than I initially thought. Aside from this, a small funtional change is made to return singularBeta instead of beta to be more consistent with the fail-soft logic used in other parts of search. ============================= How to continue from there ? We could try to audit other parts of the search where the "cutNode" variable is used, and try to use dynamic info based on heuristic eval rather than on this variable, to check if the idea behind this patch could also be applied successfuly. Bench: 3503788 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: Thu Jun 20 16:22:45 2019 +0200 Timestamp: 1561040565 QuietPick Speed-up Non-functional speedup: no need to generate, score, or sort quiet moves if SkipQuiet is true. Thanks to @mstembera for his suggestion. STC: LLR: 2.95 (-2.94,2.94) [0.00,4.00] Total: 27910 W: 6406 L: 6129 D: 15375 Elo +3.45 http://tests.stockfishchess.org/tests/view/5d07e0920ebc5925cf0a58a8 Closes https://github.com/official-stockfish/Stockfish/pull/2194 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 Jun 20 16:15:57 2019 +0200 Timestamp: 1561040157 Fix progress issue with shuffling extensions Fixes issues #2126 and #2189 where no progress in rootDepth is made for particular fens: 8/8/3P3k/8/1p6/8/1P6/1K3n2 b - - 0 1 8/1r1rp1k1/1b1pPp2/2pP1Pp1/1pP3Pp/pP5P/P5K1/8 w - - 79 46 the cause are the shuffle extensions. Upon closer analysis, it appears that in these cases a shuffle extension is made for every node searched, and progess can not be made. This patch implements a fix, namely to limit the number of extensions relative to the number of nodes searched. The ratio employed is 1/4, which fixes the issues seen so far, but it is a heuristic, and I expect that certain positions might require an even smaller fraction. The patch was tested as a bug fix and passed: STC: LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 56601 W: 12633 L: 12581 D: 31387 Elo +0.32 http://tests.stockfishchess.org/tests/view/5d02b37a0ebc5925cf09f6da LTC: LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 52042 W: 8907 L: 8837 D: 34298 Elo +0.47 http://tests.stockfishchess.org/tests/view/5d0319420ebc5925cf09fe57 Furthermore, to confirm that the shuffle extension in this form indeed still brings Elo, one more test at VLTC was performed: VLTC: LLR: 2.96 (-2.94,2.94) [0.00,3.50] Total: 142022 W: 20963 L: 20435 D: 100624 Elo +1.29 http://tests.stockfishchess.org/tests/view/5d03630d0ebc5925cf0a011a Bench: 3961247 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: syzygy1
Date: Thu Jun 20 16:09:40 2019 +0200 Timestamp: 1561039780 Partial revert of "Assorted trivial cleanups 5/2019". Since root_probe() and root_probe_wdl() do not reset all tbRank values if they fail, it is necessary to do this in rank_root_move(). This fixes issue #2196. Alternatively, the loop could be moved into both root_probe() and root_probe_wdl(). 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: VoyagerOne
Date: Fri Jun 14 19:59:17 2019 +0200 Timestamp: 1560535157 Simplify SEE Pruning (#2191) Simplify SEE Pruning Note this should also be a speedup... If givesCheck is extended we know (except for DC) that it will have a positive SEE. So this new logic will be triggered before doing another expensive SEE function. STC: LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 24429 W: 5484 L: 5368 D: 13577 Elo +1.65 http://tests.stockfishchess.org/tests/view/5cffbccd0ebc5925cf09a154 LTC: LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 28428 W: 4873 L: 4765 D: 18790 Elo +1.32 http://tests.stockfishchess.org/tests/view/5d0015f60ebc5925cf09acb1 Bench: 3897263 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: Fri Jun 14 08:22:02 2019 +0200 Timestamp: 1560493322 Remove backmost_sq (#2190) This is a non-functional simplification. backmost_sq and frontmost_sq are redundant. It seems quite clear to always use frontmost_sq and use the correct color. Non 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: Stefan Geschwentner
Date: Fri Jun 14 07:36:42 2019 +0200 Timestamp: 1560490602 Increase pawns cache (#2187) Increase size of the pawns table by the factor 8. This decreases the number of recalculations of pawn structure information significantly (at least at LTC). I have done measurements for different depths and pawn cache sizes. First are given the number of pawn entry calculations are done (in parentheses is the frequency that a call to probe triggers a pawn entry calculation). The delta% are the percentage of less done pawn entry calculations in comparison to master VSTC: bench 1 1 12 STC: bench 8 1 16 LTC: bench 64 1 20 VLTC: bench 512 1 24 VSTC STC LTC VLTC master 82218(6%) 548935(6%) 2415422(7%) 9548071(7%) pawncache*2 79859(6%) 492943(5%) 2084794(6%) 8275206(6%) pawncache*4 78551(6%) 458758(5%) 1827770(5%) 7112531(5%) pawncache*8 77963(6%) 439421(4%) 1649169(5%) 6128652(4%) delta%(p2-m) -2.9% -10.2% -13.7% -13.3% delta%(p4-m) -4.5% -16.4% -24.3% -25.5% delta%(p8-m) -5.2% -20.0% -31.7% -35.8% STC: (non-regression test because at STC the effect is smaller than at LTC) LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 22767 W: 5160 L: 5040 D: 12567 Elo +1.83 http://tests.stockfishchess.org/tests/view/5d00f6040ebc5925cf09c3e2 LTC: LLR: 2.94 (-2.94,2.94) [0.00,4.00] Total: 26340 W: 4524 L: 4286 D: 17530 Elo +3.14 http://tests.stockfishchess.org/tests/view/5d00a3810ebc5925cf09ba16 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: VoyagerOne
Date: Mon Jun 10 00:26:47 2019 +0200 Timestamp: 1560119207 No DC prune in QS (#2185) Don't prune discover checks in qSearch STC: LLR: 2.96 (-2.94,2.94) [0.50,4.50] Total: 23176 W: 5320 L: 5039 D: 12817 Elo +4.21 http://tests.stockfishchess.org/tests/view/5cfbc9350ebc5925cf094ab3 LTC: LLR: 2.95 (-2.94,2.94) [0.00,3.50] Total: 128428 W: 22222 L: 21679 D: 84527 Elo +1.47 http://tests.stockfishchess.org/tests/view/5cfbf0b70ebc5925cf094ebc Bench: 3883245 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: Sun Jun 9 14:57:08 2019 +0200 Timestamp: 1560085028 Assorted trivial cleanups 5/2019 No functional change. bench: 4178282 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 Jun 9 14:34:51 2019 +0200 Timestamp: 1560083691 Remove depth condition for ttPv (#2166) Currently PV nodes with a depth <= 4 were ignored for ttPv. Now remove this constraint and use all PV nodes. STC: LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 52209 W: 11755 L: 11694 D: 28760 Elo +0.41 http://tests.stockfishchess.org/tests/view/5cebc2d30ebc5925cf07b93a LTC: LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 20874 W: 3689 L: 3568 D: 13617 Elo +2.01 http://tests.stockfishchess.org/tests/view/5cec01fc0ebc5925cf07c62d 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: Sun Jun 9 14:33:34 2019 +0200 Timestamp: 1560083614 Simplify passed pawns. (#2159) This is a functional simplification. If all of the stoppers are levers, a simple pawn push passes. STC LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 41768 W: 9360 L: 9278 D: 23130 Elo +0.68 http://tests.stockfishchess.org/tests/view/5ce82ed60ebc5925cf073a79 LTC LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 40463 W: 6964 L: 6875 D: 26624 Elo +0.76 http://tests.stockfishchess.org/tests/view/5ce87d0b0ebc5925cf07472b 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: Sun Jun 9 14:31:16 2019 +0200 Timestamp: 1560083476 Remove a few file_of's (simplify adjacent_files_bb) #2171 This is a non-functional simplification that removes two file_of(s). STC LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 22030 W: 5106 L: 4984 D: 11940 Elo +1.92 http://tests.stockfishchess.org/tests/view/5cf028de0ebc5925cf0839e7 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: Sun Jun 9 14:28:42 2019 +0200 Timestamp: 1560083322 Simplify WeakUnopposedPawn #2181 This is a functional simplification. Moves WeakUnopposedPawn to pawns.cpp and remove piece dependency. STC LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 8699 W: 2000 L: 1853 D: 4846 Elo +5.87 http://tests.stockfishchess.org/tests/view/5cf7721b0ebc5925cf08ee79 LTC LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 46605 W: 7969 L: 7890 D: 30746 Elo +0.59 http://tests.stockfishchess.org/tests/view/5cf7d5f70ebc5925cf08fa96 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: Sun Jun 9 14:27:50 2019 +0200 Timestamp: 1560083270 SEE Pruning Tweak (#2183) Don't SEE prune any check extensions STC (yellow): LLR: -2.96 (-2.94,2.94) [0.50,4.50] Total: 129934 W: 29390 L: 28905 D: 71639 Elo +1.30 http://tests.stockfishchess.org/tests/view/5cf6b1a70ebc5925cf08dedb LTC: LLR: 2.95 (-2.94,2.94) [0.00,3.50] Total: 102115 W: 17692 L: 17224 D: 67199 Elo +1.59 http://tests.stockfishchess.org/tests/view/5cf830710ebc5925cf090331 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: Sun Jun 9 14:26:53 2019 +0200 Timestamp: 1560083213 Advanced pawn pushes tweak (#2175) passed STC http://tests.stockfishchess.org/tests/view/5cf586ee0ebc5925cf08c0ed LLR: 2.96 (-2.94,2.94) [0.50,4.50] Total: 29496 W: 6718 L: 6406 D: 16372 Elo +3.68 passed LTC http://tests.stockfishchess.org/tests/view/5cf59b630ebc5925cf08c343 LLR: 2.95 (-2.94,2.94) [0.00,3.50] Total: 40778 W: 7057 L: 6765 D: 26956 Elo +2.49 original idea from early 2018 by @jerrydonaldwatson Code slightly rewritten to be shorter and more logical, no functinal changes compared to passed patch. 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: Sun Jun 9 14:24:06 2019 +0200 Timestamp: 1560083046 Simplify Outposts #2176 This is a functional simplification. This is NOT the exact version that was tested. Beyond the testing, an assignment was removed and a piece changes for consistency. Instead of rewarding ANY square past an opponent pawn as an "outpost," only use squares that are protected by our pawn. I believe this is more consistent with what the chess world calls an "outpost." STC LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 23540 W: 5387 L: 5269 D: 12884 Elo +1.74 http://tests.stockfishchess.org/tests/view/5cf51e6d0ebc5925cf08b823 LTC LLR: 2.94 (-2.94,2.94) [-3.00,1.00] Total: 53085 W: 9271 L: 9204 D: 34610 Elo +0.44 http://tests.stockfishchess.org/tests/view/5cf5279e0ebc5925cf08b992 bench 3424592 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: Sun Jun 9 14:19:07 2019 +0200 Timestamp: 1560082747 Simplify k-value for passers. Bench: 3854907 (#2182) Stockfish evaluates passed pawns in part based on a variable k, which shapes the passed pawn bonus based on the number of squares between the current square and promotion square that are attacked by enemy pieces, and the number defended by friendly ones. Prior to this commit, we gave a large bonus when all squares between the pawn and the promotion square were defended, and if they were not, a somewhat smaller bonus if at least the pawn's next square was. However, this distinction does not appear to provide any Elo at STC or LTC. Where do we go from here? Many promising Elo-gaining patches were attempted in the past few months to refine passed pawn calculation, by altering the definitions of unsafe and defended squares. Stockfish uses these definitions to choose the value of k, so those tests interact with this PR. Therefore, it may be worthwhile to retest previously promising but not-quite-passing tests in the vicinity of this patch. STC: LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 42344 W: 9455 L: 9374 D: 23515 Elo +0.66 http://tests.stockfishchess.org/tests/view/5cf83ede0ebc5925cf0904fb LTC: LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 69548 W: 11855 L: 11813 D: 45880 Elo +0.21 http://tests.stockfishchess.org/tests/view/5cf8698f0ebc5925cf0908c8 Bench: 3854907 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: Fri May 31 14:35:39 2019 +0200 Timestamp: 1559306139 Scale lazy threshold according to material. (#2170) STC LLR: 2.95 (-2.94,2.94) [0.50,4.50] Total: 58543 W: 13238 L: 12782 D: 32523 Elo +2.71 http://tests.stockfishchess.org/tests/view/5cef3efa0ebc5925cf081f07 LTC LLR: 3.70 (-2.94,2.94) [0.00,3.50] Total: 82232 W: 14281 L: 13825 D: 54126 Elo +1.93 http://tests.stockfishchess.org/tests/view/5cef595d0ebc5925cf082441 bench 3807737 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 May 29 10:00:32 2019 +0200 Timestamp: 1559116832 Simplify semiopen_file (#2165) This is a non-functional simplification. Since our file_bb handles either Files or Squares, using Square here removes some code. Not likely any performance difference despite the test. STC LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 6081 W: 1444 L: 1291 D: 3346 Elo +8.74 http://tests.stockfishchess.org/tests/view/5ceb3e2e0ebc5925cf07ab03 Non 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 May 25 09:43:52 2019 +0200 Timestamp: 1558770232 Remove one division. (#2158) Can be included in the earlier calculation, with a small rounding difference. passed STC: LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 17912 W: 4044 L: 3915 D: 9953 Elo +2.50 http://tests.stockfishchess.org/tests/view/5ce711f90ebc5925cf070d0e passed LTC: LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 56061 W: 9579 L: 9516 D: 36966 Elo +0.39 http://tests.stockfishchess.org/tests/view/5ce716820ebc5925cf070e37 Bench: 3817662 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: Fri May 17 13:38:23 2019 +0200 Timestamp: 1558093103 Allow RQ through pieces. Bench: 3415326 (#2153) We evaluate defended and unsafe squares for a passed pawn push based on friendly and enemy rooks and queens on the passed pawn's file. Prior to this patch, we further required that these rooks and queens be able to directly attack the passed pawn. However, this restriction appears unnecessary and worth almost exactly 0 Elo at LTC. The simplified code allows rooks and queens to attack/defend the passed pawn through other pieces of either color. STC: LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 29019 W: 6488 L: 6381 D: 16150 Elo +1.28 http://tests.stockfishchess.org/tests/view/5cdcf7270ebc5925cf05d30c LTC: LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 54224 W: 9200 L: 9133 D: 35891 Elo +0.43 http://tests.stockfishchess.org/tests/view/5cddc6210ebc5925cf05eca3 Bench: 3415326 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: svivanov72
Date: Thu May 16 14:14:11 2019 +0200 Timestamp: 1558008851 Remove unused code (#2150) Remove an unused operator in has_game_cycle (thanks @vondele) and modify its comment to explain other code. No functional change. see source |