Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: MichaelB7
Date: Mon Jun 28 21:20:05 2021 +0200 Timestamp: 1624908005 Make net nn-956480d8378f.nnue the default Trained with the pytorch trainer: https://github.com/glinscott/nnue-pytorch python train.py i:/bin/all.binpack i:/bin/all.binpack --gpus 1 --threads 4 --num-workers 30 --batch-size 16384 --progress_bar_refresh_rate 300 --smart-fen-skipping --random-fen-skipping 3 --features=HalfKAv2^ --lambda=1.0 --max_epochs=440 --seed %random%%random% --default_root_dir exp/run_18 --resume-from-model ./pt/nn-75980ca503c6.pt This run is thus started from a previous master net. all.binpack equaled 4 parts Wrong_NNUE_2.binpack https://drive.google.com/file/d/1seGNOqcVdvK_vPNq98j-zV3XPE5zWAeq/view?usp=sharing plus two parts of Training_Data.binpack https://drive.google.com/file/d/1RFkQES3DpsiJqsOtUshENtzPfFgUmEff/view?usp=sharing Each set was concatenated together - making one large Wrong_NNUE 2 binpack and one large Training so the were approximately equal in size. They were then interleaved together. The idea was to give Wrong_NNUE.binpack closer to equal weighting with the Training_Data binpack passed STC: https://tests.stockfishchess.org/tests/view/60d0c0a7a8ec07dc34c072b2 LLR: 2.93 (-2.94,2.94) <-0.50,2.50> Total: 18440 W: 1693 L: 1531 D: 15216 Elo +3.05 Ptnml(0-2): 67, 1225, 6464, 1407, 57 passed LTC: https://tests.stockfishchess.org/tests/view/60d762793beab81350ac9d72 LLR: 2.98 (-2.94,2.94) <0.50,3.50> Total: 93120 W: 3152 L: 2933 D: 87035 Elo +0.82 Ptnml(0-2): 48, 2581, 41076, 2814, 41 passed LTC (rebased branch to current master): https://tests.stockfishchess.org/tests/view/60d85eeb3beab81350ac9e2b LLR: 2.96 (-2.94,2.94) <0.50,3.50> Total: 42688 W: 1347 L: 1206 D: 40135 Elo +1.15 Ptnml(0-2): 14, 1097, 18981, 1238, 14. closes https://github.com/official-stockfish/Stockfish/pull/3592 Bench: 4906727 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: Joost VandeVondele
Date: Mon Jun 28 21:13:30 2021 +0200 Timestamp: 1624907610 Update WDL model for NNUE This updates the WDL model based on the LTC statistics in June this year (10M games), so from pre-NNUE to NNUE based results. (for old results see, https://github.com/official-stockfish/Stockfish/pull/2778) As before the fit by the model to the data is quite good. closes https://github.com/official-stockfish/Stockfish/pull/3582 No functional change see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: bmc4
Date: Mon Jun 28 21:12:04 2021 +0200 Timestamp: 1624907524 Simplify Reductions Initialization passed STC: LLR: 2.94 (-2.94,2.94) <-2.50,0.50> Total: 45032 W: 3600 L: 3518 D: 37914 Elo +0.63 Ptnml(0-2): 111, 2893, 16435, 2957, 120 https://tests.stockfishchess.org/tests/view/60d2655d40925195e7a6c527 LTC: LLR: 3.00 (-2.94,2.94) <-2.50,0.50> Total: 25728 W: 786 L: 722 D: 24220 Elo +0.86 Ptnml(0-2): 5, 650, 11494, 706, 9 https://tests.stockfishchess.org/tests/view/60d2b14240925195e7a6c577 closes https://github.com/official-stockfish/Stockfish/pull/3584 bench: 4602977 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: Stéphane Nicolet
Date: Tue Jun 22 11:51:03 2021 +0200 Timestamp: 1624355463 Detect fortresses a little bit quicker In the so-called "hybrid" method of evaluation of current master, we use the classical eval (because of its speed) instead of the NNUE eval when the classical material balance approximation hints that the position is "winning enough" to rely on the classical eval. This trade-off idea between speed and accuracy works well in general, but in some fortress positions the classical eval is just bad. So in shuffling branches of the search tree, we (slowly) increase the thresehold so that eventually we don't trust classical anymore and switch to NNUE evaluation. This patch increases that threshold faster, so that we switch to NNUE quicker in shuffling branches. Idea is to incite Stockfish to spend less time in fortresses lines in the search tree, and spend more time searching the critical lines. passed STC: LLR: 2.96 (-2.94,2.94) <-0.50,2.50> Total: 47872 W: 3908 L: 3720 D: 40244 Elo +1.36 Ptnml(0-2): 122, 3053, 17419, 3199, 143 https://tests.stockfishchess.org/tests/view/60cef34b457376eb8bcab79d passed LTC: LLR: 2.93 (-2.94,2.94) <0.50,3.50> Total: 73616 W: 2326 L: 2143 D: 69147 Elo +0.86 Ptnml(0-2): 21, 1940, 32705, 2119, 23 https://tests.stockfishchess.org/tests/view/60cf6d842114332881e73528 Retested at LTC against lastest master: LLR: 2.93 (-2.94,2.94) <0.50,3.50> Total: 18264 W: 642 L: 532 D: 17090 Elo +2.09 Ptnml(0-2): 6, 479, 8055, 583, 9 https://tests.stockfishchess.org/tests/view/60d18cd540925195e7a6c351 closes https://github.com/official-stockfish/Stockfish/pull/3578 Bench: 5139233 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: MichaelB7
Date: Mon Jun 21 23:16:55 2021 +0200 Timestamp: 1624310215 Make net nn-190f102a22c3.nnue the default net. Trained with the pytorch trainer: https://github.com/glinscott/nnue-pytorch python train.py i:/bin/all.binpack i:/bin/all.binpack --gpus 1 --threads 4 --num-workers 30 --batch-size 16384 --progress_bar_refresh_rate 300 --smart-fen-skipping --random-fen-skipping 3 --features=HalfKAv2^ --lambda=1.0 --max_epochs=440 --seed %random%%random% --default_root_dir exp/run_17 --resume-from-model ./pt/nn-75980ca503c6.pt This run is thus started from the previous master net. all.binpack equaled 4 parts Wrong_NNUE_2.binpack https://drive.google.com/file/d/1seGNOqcVdvK_vPNq98j-zV3XPE5zWAeq/view?usp=sharing plus two parts of Training_Data.binpack https://drive.google.com/file/d/1RFkQES3DpsiJqsOtUshENtzPfFgUmEff/view?usp=sharing Each set was concatenated together - making one large Wrong_NNUE 2 binpack and one large Training so the were approximately equal in size. They were then interleaved together. The idea was to give Wrong_NNUE.binpack closer to equal weighting with the Training_Data binpack passed LTC https://tests.stockfishchess.org/tests/view/60d09f52b4c17000d679517f LLR: 2.93 (-2.94,2.94) <0.50,3.50> Total: 32184 W: 1100 L: 970 D: 30114 Elo +1.40 Ptnml(0-2): 10, 878, 14193, 994, 17 passed STC https://tests.stockfishchess.org/tests/view/60d086c02114332881e7368e LLR: 2.93 (-2.94,2.94) <-0.50,2.50> Total: 11360 W: 1056 L: 906 D: 9398 Elo +4.59 Ptnml(0-2): 25, 735, 4026, 853, 41 closes https://github.com/official-stockfish/Stockfish/pull/3576 Bench: 4631244 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: Joost VandeVondele
Date: Mon Jun 21 23:14:58 2021 +0200 Timestamp: 1624310098 Fix build error on OSX directly use integer version for cp calculation. fixes https://github.com/official-stockfish/Stockfish/issues/3573 closes https://github.com/official-stockfish/Stockfish/pull/3574 No functional change see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: Stéphane Nicolet
Date: Mon Jun 21 22:58:56 2021 +0200 Timestamp: 1624309136 Remove the Contempt UCI option This patch removes the UCI option for setting Contempt in classical evaluation. It is exactly equivalent to using Contempt=0 for the UCI contempt value and keeping the dynamic part in the algo (renaming this dynamic part `trend` to better describe what it does). We have tried quite hard to implement a working Contempt feature for NNUE but nothing really worked, so it is probably time to give up. Interested chess fans wishing to keep playing with the UCI option for Contempt and use it with the classical eval are urged to download the version tagged "SF_Classical" of Stockfish (dated 31 July 2020), as it was the last version where our search algorithm was tuned for the classical eval and is probably our strongest classical player ever: https://github.com/official-stockfish/Stockfish/tags Passed STC: LLR: 2.95 (-2.94,2.94) <-2.50,0.50> Total: 72904 W: 6228 L: 6175 D: 60501 Elo +0.25 Ptnml(0-2): 221, 5006, 25971, 5007, 247 https://tests.stockfishchess.org/tests/view/60c98bf9457376eb8bcab18d Passed LTC: LLR: 2.93 (-2.94,2.94) <-2.50,0.50> Total: 45168 W: 1601 L: 1547 D: 42020 Elo +0.42 Ptnml(0-2): 38, 1331, 19786, 1397, 32 https://tests.stockfishchess.org/tests/view/60c9c7fa457376eb8bcab1bb closes https://github.com/official-stockfish/Stockfish/pull/3575 Bench: 4947716 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: Stéphane Nicolet
Date: Sun Jun 20 23:17:07 2021 +0200 Timestamp: 1624223827 Keep more pawns and pieces when attacking This patch increase the weight of pawns and pieces from 28 to 32 in the scaling formula we apply to the output of the NNUE pure eval. Increasing this gradient for pawns and pieces means that Stockfish will try a little harder to keep material when she has the advantage, and try a little bit harder to escape into an endgame when she is under pressure. STC: LLR: 2.93 (-2.94,2.94) <-0.50,2.50> Total: 53168 W: 4371 L: 4177 D: 44620 Elo +1.27 Ptnml(0-2): 160, 3389, 19283, 3601, 151 https://tests.stockfishchess.org/tests/view/60cefd1d457376eb8bcab7ab LTC: LLR: 2.94 (-2.94,2.94) <0.50,3.50> Total: 10888 W: 386 L: 288 D: 10214 Elo +3.13 Ptnml(0-2): 3, 260, 4821, 356, 4 https://tests.stockfishchess.org/tests/view/60cf709d2114332881e7352b closes https://github.com/official-stockfish/Stockfish/pull/3571 Bench: 4965430 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: MichaelB7
Date: Sat Jun 19 23:24:35 2021 +0200 Timestamp: 1624137875 Make net nn-75980ca503c6.nnue the default. trained with the Python command c:\nnue>python train.py i:/bin/all.binpack i:/bin/all.binpack --gpus 1 --threads 4 --num-workers 30 --batch-size 16384 --progress_bar_refresh_rate 300 --smart-fen-skipping --random-fen-skipping 3 --features=HalfKAv2^ --lambda=1.0 --max_epochs=440 --seed %random%%random% --default_root_dir exp/run_10 --resume-from-model ./pt/nn-3b20abec10c1.pt ` all.binpack equaled 4 parts Wrong_NNUE_2.binpack https://drive.google.com/file/d/1seGNOqcVdvK_vPNq98j-zV3XPE5zWAeq/view?usp=sharing plus two parts of Training_Data.binpack https://drive.google.com/file/d/1RFkQES3DpsiJqsOtUshENtzPfFgUmEff/view?usp=sharing Each set was concatenated together - making one large Wrong_NNUE 2 binpack and one large Training so the were approximately equal in size. They were then interleaved together. The idea was to give Wrong_NNUE.binpack closer to equal weighting with the Training_Data binpack . Net nn-3b20abec10c1.nnue was chosen as the --resume-from-model with the idea that through learning, the manually hex edited values will be learned and will not need to be manually adjusted going forward. They would also be fine tuned by the learning process. passed STC: https://tests.stockfishchess.org/tests/view/60cdf91e457376eb8bcab66f LLR: 2.95 (-2.94,2.94) <-0.50,2.50> Total: 18256 W: 1639 L: 1479 D: 15138 Elo +3.05 Ptnml(0-2): 59, 1179, 6505, 1313, 72 passed LTC: https://tests.stockfishchess.org/tests/view/60ce2166457376eb8bcab6e1 LLR: 2.94 (-2.94,2.94) <0.50,3.50> Total: 18792 W: 654 L: 542 D: 17596 Elo +2.07 Ptnml(0-2): 9, 490, 8291, 592, 14 closes https://github.com/official-stockfish/Stockfish/pull/3570 Bench: 5020972 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: Tomasz Sobczyk
Date: Sat Jun 19 11:57:01 2021 +0200 Timestamp: 1624096621 Change trace with NNUE eval support This patch adds some more output to the `eval` command. It adds a board display with estimated piece values (method is remove-piece, evaluate, put-piece), and splits the NNUE evaluation with (psqt,layers) for each bucket for the NNUE net. Example: ``` ./stockfish position fen 3Qb1k1/1r2ppb1/pN1n2q1/Pp1Pp1Pr/4P2p/4BP2/4B1R1/1R5K b - - 11 40 eval Contributing terms for the classical eval: +------------+-------------+-------------+-------------+ | Term | White | Black | Total | | | MG EG | MG EG | MG EG | +------------+-------------+-------------+-------------+ | Material | ---- ---- | ---- ---- | -0.73 -1.55 | | Imbalance | ---- ---- | ---- ---- | -0.21 -0.17 | | Pawns | 0.35 -0.00 | 0.19 -0.26 | 0.16 0.25 | | Knights | 0.04 -0.08 | 0.12 -0.01 | -0.08 -0.07 | | Bishops | -0.34 -0.87 | -0.17 -0.61 | -0.17 -0.26 | | Rooks | 0.12 0.00 | 0.08 0.00 | 0.04 0.00 | | Queens | 0.00 0.00 | -0.27 -0.07 | 0.27 0.07 | | Mobility | 0.84 1.76 | 0.01 0.66 | 0.83 1.10 | |King safety | -0.99 -0.17 | -0.72 -0.10 | -0.27 -0.07 | | Threats | 0.27 0.27 | 0.73 0.86 | -0.46 -0.59 | | Passed | 0.00 0.00 | 0.79 0.82 | -0.79 -0.82 | | Space | 0.61 0.00 | 0.24 0.00 | 0.37 0.00 | | Winnable | ---- ---- | ---- ---- | 0.00 -0.03 | +------------+-------------+-------------+-------------+ | Total | ---- ---- | ---- ---- | -1.03 -2.14 | +------------+-------------+-------------+-------------+ NNUE derived piece values: +-------+-------+-------+-------+-------+-------+-------+-------+ | | | | Q | b | | k | | | | | | +12.4 | -1.62 | | | | +-------+-------+-------+-------+-------+-------+-------+-------+ | | r | | | p | p | b | | | | -3.89 | | | -0.84 | -1.19 | -3.32 | | +-------+-------+-------+-------+-------+-------+-------+-------+ | p | N | | n | | | q | | | -1.81 | +3.71 | | -4.82 | | | -5.04 | | +-------+-------+-------+-------+-------+-------+-------+-------+ | P | p | | P | p | | P | r | | +1.16 | -0.91 | | +0.55 | +0.12 | | +0.50 | -4.02 | +-------+-------+-------+-------+-------+-------+-------+-------+ | | | | | P | | | p | | | | | | +2.33 | | | +1.17 | +-------+-------+-------+-------+-------+-------+-------+-------+ | | | | | B | P | | | | | | | | +4.79 | +1.54 | | | +-------+-------+-------+-------+-------+-------+-------+-------+ | | | | | B | | R | | | | | | | +4.54 | | +6.03 | | +-------+-------+-------+-------+-------+-------+-------+-------+ | | R | | | | | | K | | | +4.81 | | | | | | | +-------+-------+-------+-------+-------+-------+-------+-------+ NNUE network contributions (Black to move) +------------+------------+------------+------------+ | Bucket | Material | Positional | Total | | | (PSQT) | (Layers) | | +------------+------------+------------+------------+ | 0 | + 0.32 | - 1.46 | - 1.13 | | 1 | + 0.25 | - 0.68 | - 0.43 | | 2 | + 0.46 | - 1.72 | - 1.25 | | 3 | + 0.55 | - 1.80 | - 1.25 | | 4 | + 0.48 | - 1.77 | - 1.29 | | 5 | + 0.40 | - 2.00 | - 1.60 | | 6 | + 0.57 | - 2.12 | - 1.54 | <-- this bucket is used | 7 | + 3.38 | - 2.00 | + 1.37 | +------------+------------+------------+------------+ Classical evaluation -1.00 (white side) NNUE evaluation +1.54 (white side) Final evaluation +2.38 (white side) [with scaled NNUE, hybrid, ...] ``` Also renames the export_net() function to save_eval() while there. closes https://github.com/official-stockfish/Stockfish/pull/3562 No functional change see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: proukornew
Date: Sat Jun 19 11:22:30 2021 +0200 Timestamp: 1624094550 Fix for Cygwin's environment build-profile (fixed) The Cygwin environment has two g++ compilers, each with a different problem for compiling Stockfish at the moment: (a) g++.exe : full posix build compiler, linked to cygwin dll. => This one has a problem embedding the net. (b) x86_64-w64-mingw32-g++.exe : native Windows build compiler. => This one manages to embed the net, but has a problem related to libgcov when we use the profile-build target of Stockfish. This patch solves the problem for compiler (b), so that our recommended command line if you want to build an optimized version of Stockfish on Cygwin becomes something like the following (you can change the ARCH value to whatever you want, but note the COMP and CXX variables pointing at the right compiler): ``` make -j profile-build ARCH=x86-64-modern COMP=mingw CXX=x86_64-w64-mingw32-c++.exe ``` closes https://github.com/official-stockfish/Stockfish/pull/3569 No functional change see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: Joost VandeVondele
Date: Fri Jun 18 23:50:26 2021 +0200 Timestamp: 1624053026 Make net nn-50144f835024.nnue the default trained with the Python command c:\nnue>python train.py i:/bin/all.binpack i:/bin/all.binpack --gpus 1 --threads 4 --num-workers 30 --batch-size 16384 --progress_bar_refresh_rate 300 --smart-fen-skipping --random-fen-skipping 3 --features=HalfKAv2^ --lambda=1.0 --max_epochs=440 --seed %random%%random% --default_root_dir exp/run_8 --resume-from-model ./pt/nn-6ad41a9207d0.pt ` all.binpack equaled 4 parts Wrong_NNUE_2.binpack https://drive.google.com/file/d/1seGNOqcVdvK_vPNq98j-zV3XPE5zWAeq/view?usp=sharing plus two parts of Training_Data.binpack https://drive.google.com/file/d/1RFkQES3DpsiJqsOtUshENtzPfFgUmEff/view?usp=sharing Each set was concatenated together - make one large Wrong_NNUE 2 binpack and one large Training_Data of approximate size. They were then interleaved together. The idea was to give Wrong_NNUE.binpack closer to equal weighting with the Training _Data binpack . nn-6ad41a9207d0.pt was derived from a net vondele ran which passed STC quickly, but faltered in LTC. https://tests.stockfishchess.org/tests/view/60cba666457376eb8bcab443 STC: LLR: 2.95 (-2.94,2.94) <-0.50,2.50> Total: 18792 W: 2068 L: 1889 D: 14835 Elo +3.31 Ptnml(0-2): 82, 1480, 6117, 1611, 106 https://tests.stockfishchess.org/tests/view/60ccda8b457376eb8bcab568 LTC: LLR: 2.94 (-2.94,2.94) <0.50,3.50> Total: 11376 W: 574 L: 454 D: 10348 Elo +3.67 Ptnml(0-2): 4, 412, 4747, 510, 15 https://tests.stockfishchess.org/tests/view/60ccf952457376eb8bcab58d closes https://github.com/official-stockfish/Stockfish/pull/3568 Bench: 4900906 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: Tomasz Sobczyk
Date: Fri Jun 18 22:05:56 2021 +0200 Timestamp: 1624046756 Add basic github workflow move to github actions to replace travis CI. First version, testing on linux using gcc and clang. gcc build with sanitizers and valgrind. No functional change see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: SFisGOD
Date: Fri Jun 18 21:29:14 2021 +0200 Timestamp: 1624044554 Update default net to nn-aa9d7eeb397e.nnue Optimization of vondele's nn-33c9d39e5eb6.nnue using SPSA https://tests.stockfishchess.org/tests/view/60ca68be457376eb8bcab28b Setting: ck values are default based on how large the parameters are The new values for this net are the raw values at the end of the tuning (80k games) The significant changes are in buckets 1 and 2 (5-12 pieces) so the main difference is in playing endgames if we compare it to nn-33c9. There is also change in bucket 7 (29-32 pieces) but not as substantial as the changes in buckets 1 and 2. If we interpret the changes based on an experiment a few months ago, this new net plays more optimistically during endgames and less optimistically during openings. STC: LLR: 2.93 (-2.94,2.94) <-0.50,2.50> Total: 49504 W: 4246 L: 4053 D: 41205 Elo +1.35 Ptnml(0-2): 140, 3282, 17749, 3407, 174 https://tests.stockfishchess.org/tests/view/60cbd752457376eb8bcab478 LTC: LLR: 2.95 (-2.94,2.94) <0.50,3.50> Total: 88720 W: 4926 L: 4651 D: 79143 Elo +1.08 Ptnml(0-2): 105, 4048, 35793, 4295, 119 https://tests.stockfishchess.org/tests/view/60cc7828457376eb8bcab4fa closes https://github.com/official-stockfish/Stockfish/pull/3566 Bench: 4758885 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: ap
Date: Fri Jun 18 20:00:13 2021 +0200 Timestamp: 1624039213 New default net nn-3b20abec10c1.nnue This net was created by @pleomati, who manually edited with an hex editor 10 values randomly chosen in the LCSFNet10 net (nn-6ad41a9207d0.nnue) to create this one. The LCSFNet10 net was trained by Joost VandeVondele from a dataset combining Stockfish games and Leela games (16x10^9 positions from SF self-play at depth 9, and 6.3x10^9 positions from Leela games, so overall 72% of Stockfish positions and 28% of Leela positions). passed STC 10+0.1: LLR: 2.94 (-2.94,2.94) <-0.50,2.50> Total: 50888 W: 5881 L: 5654 D: 39353 Elo +1.55 Ptnml(0-2): 281, 4290, 16085, 4497, 291 https://tests.stockfishchess.org/tests/view/60cbfa68457376eb8bcab49a passed LTC 60+0.6: LLR: 2.94 (-2.94,2.94) <0.50,3.50> Total: 25480 W: 1498 L: 1338 D: 22644 Elo +2.18 Ptnml(0-2): 36, 1155, 10193, 1325, 31 https://tests.stockfishchess.org/tests/view/60cc4af8457376eb8bcab4d4 closes https://github.com/official-stockfish/Stockfish/pull/3564 Bench: 4904930 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: Stéphane Nicolet
Date: Thu Jun 17 18:10:01 2021 +0200 Timestamp: 1623946201 Revert "Fix for Cygwin's environment build-profile" This reverts commit "Fix for Cygwin's environment build-profile", as it was giving errors for "make clean" on some Windows environments. See comments in https://github.com/official-stockfish/Stockfish/commit/68bf362ea2385a641be9f5ed9ce2acdf55a1ecf1 Possibly somebody can propose a solution that would fix Cygwin builds and not break on other system too, stay tuned! :-) No functional change see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: bmc4
Date: Thu Jun 17 02:08:33 2021 +0200 Timestamp: 1623888513 Simplify reduction when best move doesn't change frequently. STC: LLR: 2.94 (-2.94,2.94) <-2.50,0.50> Total: 40400 W: 3468 L: 3377 D: 33555 Elo +0.78 Ptnml(0-2): 134, 2734, 14388, 2795, 149 https://tests.stockfishchess.org/tests/view/60c93e5a457376eb8bcab15f LTC: LLR: 2.94 (-2.94,2.94) <-2.50,0.50> Total: 34200 W: 1190 L: 1128 D: 31882 Elo +0.63 Ptnml(0-2): 22, 998, 15001, 1054, 25 https://tests.stockfishchess.org/tests/view/60c96a1a457376eb8bcab180 closes https://github.com/official-stockfish/Stockfish/pull/3559 bench: 5629669 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: proukornew
Date: Thu Jun 17 01:14:20 2021 +0200 Timestamp: 1623885260 Fix for Cygwin's environment build-profile The Cygwin environment has two g++ compilers, each with a different problem for compiling Stockfish at the moment: (a) g++.exe : full posix build compiler, linked to cygwin dll. => This one has a problem embedding the net. (b) x86_64-w64-mingw32-g++.exe : native Windows build compiler. => This one manages to embed the net, but has a problem related to libgcov when we use the profile-build target of Stockfish. This patch solves the problem for compiler (b), so that our recommended command line if you want to build an optimized version of Stockfish on Cygwin becomes something like the following (you can change the ARCH value to whatever you want, but note the COMP and CXX variables pointing at the right compiler): ``` make -j profile-build ARCH=x86-64-modern COMP=mingw CXX=x86_64-w64-mingw32-c++.exe ``` closes https://github.com/official-stockfish/Stockfish/pull/3463 No functional change see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: Joost VandeVondele
Date: Tue Jun 15 22:08:40 2021 +0200 Timestamp: 1623787720 New default net nn-33c9d39e5eb6.nnue As the previous net, this net is trained on Leela games as provided by borg. See also https://lczero.org/blog/2021/06/the-importance-of-open-data/ The particular data set, which is a mix of T60 and T74 data, is now available as a single binpack: https://drive.google.com/file/d/1RFkQES3DpsiJqsOtUshENtzPfFgUmEff/view?usp=sharing The training command was: python train.py ../../training_data_pylon.binpack ../../training_data_pylon.binpack --gpus 1 --threads 2 --num-workers 2 --batch-size 16384 --progress_bar_refresh_rate 300 --smart-fen-skipping --random-fen-skipping 10 --features=HalfKAv2^ --lambda=1.0 --max_epochs=440 --seed $RANDOM --default_root_dir exp/run_2 passed STC: https://tests.stockfishchess.org/tests/view/60c887cb457376eb8bcab054 LLR: 2.94 (-2.94,2.94) <-0.50,2.50> Total: 12792 W: 1483 L: 1311 D: 9998 Elo +4.67 Ptnml(0-2): 62, 989, 4131, 1143, 71 passed LTC: https://tests.stockfishchess.org/tests/view/60c8e5c4457376eb8bcab0f0 LLR: 2.95 (-2.94,2.94) <0.50,3.50> Total: 11272 W: 601 L: 477 D: 10194 Elo +3.82 Ptnml(0-2): 9, 421, 4657, 535, 14 also had strong LTC performance against another strong net of the series: https://tests.stockfishchess.org/tests/view/60c8c40d457376eb8bcab0c6 closes https://github.com/official-stockfish/Stockfish/pull/3557 Bench: 5032320 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: J. Oster
Date: Mon Jun 14 17:28:30 2021 +0200 Timestamp: 1623684510 Fix a rare case of wrong TB ranking of a root move leading to a 3-fold repetition. With this small fix a draw ranking and thus a draw score is being applied. This works for both, ranking by dtz or wdl tables. Fixes https://github.com/official-stockfish/Stockfish/issues/3542 (No functional change without TBs.) Bench: 4877339 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: Tomasz Sobczyk
Date: Mon Jun 14 11:22:08 2021 +0200 Timestamp: 1623662528 Reduce the number of accumulator states Reduce from 3 to 2. Make the intent of the states clearer. STC: https://tests.stockfishchess.org/tests/view/60c50111457376eb8bcaad03 LLR: 2.95 (-2.94,2.94) <-2.50,0.50> Total: 61888 W: 5007 L: 4944 D: 51937 Elo +0.35 Ptnml(0-2): 164, 3947, 22649, 4030, 154 LTC: https://tests.stockfishchess.org/tests/view/60c52b1c457376eb8bcaad2c LLR: 2.94 (-2.94,2.94) <-2.50,0.50> Total: 20248 W: 688 L: 618 D: 18942 Elo +1.20 Ptnml(0-2): 7, 551, 8946, 605, 15 closes https://github.com/official-stockfish/Stockfish/pull/3548 No functional change. see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: JWmer
Date: Mon Jun 14 09:24:07 2021 +0200 Timestamp: 1623655447 Update default net to nn-8e47cf062333.nnue This net is the result of training on data used by the Leela project. More precisely, we shuffled T60 and T74 data kindly provided by borg (for different Tnn, the data is a result of Leela selfplay with differently sized Leela nets). The data is available at vondele's google drive: https://drive.google.com/drive/folders/1mftuzYdl9o6tBaceR3d_VBQIrgKJsFpl. The Leela data comes in small chunks of .binpack files. To shuffle them, we simply used a small python script to randomly rename the files, and then concatenated them using `cat`. As validation data we picked a file of T60 data. We will further investigate T74 data. The training for the NNUE architecture used 200 epochs with the Python trainer from the Stockfish project. Unlike the previous run we tried with this data, this run does not have adjusted scaling — not because we didn't want to, but because we forgot. However, this training randomly skips 40% more positions than previous run. The loss was very spiky and decreased slower than it does usually. Training loss: https://github.com/official-stockfish/images/blob/main/training-loss-8e47cf062333.png Validation loss: https://github.com/official-stockfish/images/blob/main/validation-loss-8e47cf062333.png This is the exact training command: python train.py --smart-fen-skipping --random-fen-skipping 14 --batch-size 16384 --threads 4 --num-workers 4 --gpus 1 trainingdata\training_data.binpack validationdata\val.binpack --- 10k STC result: ELO: 3.61 +-3.3 (95%) LOS: 98.4% Total: 10000 W: 1241 L: 1137 D: 7622 Elo +3.61 Ptnml(0-2): 68, 841, 3086, 929, 76 https://tests.stockfishchess.org/tests/view/60c67e50457376eb8bcaae70 10k LTC result: ELO: 2.71 +-2.4 (95%) LOS: 98.8% Total: 10000 W: 659 L: 581 D: 8760 Elo +2.71 Ptnml(0-2): 22, 485, 3900, 579, 14 https://tests.stockfishchess.org/tests/view/60c69deb457376eb8bcaae98 Passed LTC: LLR: 2.93 (-2.94,2.94) <0.50,3.50> Total: 9648 W: 685 L: 545 D: 8418 Elo +5.04 Ptnml(0-2): 22, 448, 3740, 596, 18 https://tests.stockfishchess.org/tests/view/60c6d41c457376eb8bcaaecf --- closes https://github.com/official-stockfish/Stockfish/pull/3550 Bench: 4877339 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: Tomasz Sobczyk
Date: Sun Jun 13 13:10:56 2021 +0200 Timestamp: 1623582656 Register count for feature transformer Compute optimal register count for feature transformer accumulation dynamically. This also introduces a change where AVX512 would only use 8 registers instead of 16 (now possible due to a 2x increase in feature transformer size). closes https://github.com/official-stockfish/Stockfish/pull/3543 No functional change see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: Vizvezdenec
Date: Sun Jun 13 12:00:20 2021 +0200 Timestamp: 1623578420 Do less LMR extensions This patch restricts LMR extensions (of non-transposition table moves) from being used when the transposition table move was extended by two plies via singular extension. This may serve to limit search explosions in certain positions. This makes a lot of sense because the precondition for the tt-move to have been singular extended by two plies is that the result of the alternate search (with excluded the tt-move) has been a hard fail low: it is natural to later search less for non tt-moves in this situation. The current state of depth/extensions/reductions management is getting quite tricky in our search algo, see https://github.com/official-stockfish/Stockfish/pull/3546#issuecomment-860174549 for some discussion. Suggestions welcome! Passed STC https://tests.stockfishchess.org/tests/view/60c3f293457376eb8bcaac8d LLR: 2.95 (-2.94,2.94) <-0.50,2.50> Total: 117984 W: 9698 L: 9430 D: 98856 Elo +0.79 Ptnml(0-2): 315, 7708, 42703, 7926, 340 passed LTC https://tests.stockfishchess.org/tests/view/60c46ea5457376eb8bcaacc7 LLR: 2.97 (-2.94,2.94) <0.50,3.50> Total: 11280 W: 401 L: 302 D: 10577 Elo +3.05 Ptnml(0-2): 2, 271, 4998, 364, 5 closes https://github.com/official-stockfish/Stockfish/pull/3546 Bench: 4709974 see source |
Windows x64 for Haswell CPUs Windows x64 for modern computers + AVX2 Windows x64 for modern computers Windows x64 + SSSE3 Windows x64 Windows 32 Linux x64 for Haswell CPUs Linux x64 for modern computers + AVX2 Linux x64 for modern computers Linux x64 + SSSE3 Linux x64 | Author: Stéphane Nicolet
Date: Sun Jun 13 10:02:43 2021 +0200 Timestamp: 1623571363 Clarify use of UCI options Update README.md to clarify use of UCI options closes https://github.com/official-stockfish/Stockfish/pull/3540 No functional change see source |