Dev Builds » 20210820-0650

Use this dev build

NCM plays each Stockfish dev build 20,000 times against Stockfish 15. This yields an approximate Elo difference and establishes confidence in the strength of the dev builds.

Summary

Host Duration Avg Base NPS Games WLD Standard Elo Ptnml(0-2) Gamepair Elo
ncm-dbt-01 06:52:40 584401 3992 641 1379 1972 -64.98 ± 5.1 7 902 909 178 0 -133.44 ± 11.28
ncm-dbt-02 06:53:37 586000 4006 632 1396 1978 -67.08 ± 5.09 14 902 921 166 0 -136.74 ± 11.2
ncm-dbt-03 06:52:09 586922 4002 657 1354 1991 -61.13 ± 5.14 10 868 933 189 1 -124.53 ± 11.13
ncm-dbt-04 06:53:01 571695 4000 679 1359 1962 -59.64 ± 5.23 21 834 952 190 3 -119.5 ± 11.01
ncm-dbt-05 06:52:04 585595 4000 651 1388 1961 -64.75 ± 5.15 14 887 924 172 3 -132.14 ± 11.18
20000 3260 6876 9864 -63.51 ± 2.3 66 4393 4639 895 7 -129.23 ± 4.99

Test Detail

ID Host Base NPS Games WLD Standard Elo Ptnml(0-2) Gamepair Elo CLI PGN
380435 ncm-dbt-03 586308 2 1 1 0 0.0 ± 34.02 0 0 1 0 0 0.0 ± 30.47
380434 ncm-dbt-02 586646 6 0 3 3 -190.46 ± 337.08 1 1 1 0 0 -279.24 ± 576.89
380433 ncm-dbt-01 578506 492 80 183 229 -73.83 ± 14.18 1 118 110 17 0 -153.29 ± 32.5
380432 ncm-dbt-04 574175 500 81 171 248 -63.23 ± 13.91 3 101 129 17 0 -126.18 ± 29.62
380431 ncm-dbt-05 582861 500 83 178 239 -66.82 ± 14.75 2 114 111 23 0 -135.76 ± 32.43
380430 ncm-dbt-02 588387 500 72 176 252 -73.33 ± 14.44 1 122 107 20 0 -152.18 ± 33.05
380429 ncm-dbt-03 587070 500 85 161 254 -53.22 ± 15.72 2 106 109 32 1 -107.54 ± 32.71
380428 ncm-dbt-01 585717 500 84 162 254 -54.64 ± 14.63 2 100 122 26 0 -109.07 ± 30.84
380427 ncm-dbt-04 572034 500 88 172 240 -58.93 ± 14.69 2 105 118 25 0 -118.33 ± 31.4
380426 ncm-dbt-05 584076 500 92 187 221 -66.82 ± 14.34 2 111 117 20 0 -135.76 ± 31.48
380425 ncm-dbt-03 586646 500 77 167 256 -63.23 ± 14.47 0 114 112 24 0 -130.94 ± 32.29
380424 ncm-dbt-02 587749 500 70 179 251 -76.97 ± 14.97 6 115 111 18 0 -152.18 ± 32.38
380423 ncm-dbt-01 585674 500 71 182 247 -78.43 ± 15.15 2 130 95 23 0 -162.35 ± 35.05
380422 ncm-dbt-04 566612 500 80 174 246 -66.1 ± 15.26 1 120 101 28 0 -135.76 ± 33.97
380421 ncm-dbt-05 582402 500 76 166 258 -63.23 ± 13.77 0 109 122 19 0 -130.94 ± 30.71
380420 ncm-dbt-03 583908 500 81 165 254 -58.93 ± 14.29 0 108 118 24 0 -121.46 ± 31.39
380419 ncm-dbt-02 585843 500 81 173 246 -64.66 ± 13.97 0 112 118 20 0 -134.15 ± 31.33
380418 ncm-dbt-01 583866 500 93 169 238 -53.22 ± 14.01 0 100 126 24 0 -109.07 ± 30.24
380417 ncm-dbt-03 586774 500 84 172 244 -61.79 ± 13.85 1 105 125 19 0 -126.18 ± 30.27
380416 ncm-dbt-04 571752 500 88 161 251 -51.09 ± 14.85 0 102 121 25 2 -107.54 ± 30.99
380415 ncm-dbt-05 583782 500 83 176 241 -65.38 ± 14.97 2 114 109 25 0 -132.54 ± 32.75
380414 ncm-dbt-02 586054 500 75 173 252 -68.99 ± 13.86 1 113 119 17 0 -142.26 ± 31.1
380413 ncm-dbt-01 584664 500 70 175 255 -74.06 ± 13.59 2 114 121 13 0 -152.18 ± 30.64
380412 ncm-dbt-03 588345 500 84 181 235 -68.27 ± 14.67 3 112 114 21 0 -137.37 ± 31.96
380411 ncm-dbt-04 571230 500 77 165 258 -61.79 ± 15.6 7 100 117 26 0 -116.78 ± 31.56
380410 ncm-dbt-05 589155 500 73 161 266 -61.79 ± 14.68 2 108 116 24 0 -124.6 ± 31.69
380409 ncm-dbt-02 585295 500 80 177 243 -68.27 ± 14.81 1 119 106 24 0 -140.62 ± 33.22
380408 ncm-dbt-01 585674 500 89 172 239 -58.21 ± 13.97 0 105 123 22 0 -119.89 ± 30.63
380407 ncm-dbt-03 588643 500 80 171 249 -63.95 ± 14.09 0 112 117 21 0 -132.54 ± 31.5
380406 ncm-dbt-02 581652 500 83 167 250 -58.93 ± 14.29 2 102 124 22 0 -118.33 ± 30.49
380405 ncm-dbt-04 571712 500 87 167 246 -56.07 ± 15.47 3 104 114 28 1 -112.14 ± 32.0
380404 ncm-dbt-05 588174 500 88 168 244 -56.07 ± 14.96 0 108 116 24 2 -118.33 ± 31.7
380403 ncm-dbt-01 587877 500 66 171 263 -74.06 ± 13.89 0 122 111 17 0 -155.54 ± 32.36
380402 ncm-dbt-03 587282 500 74 165 261 -63.94 ± 14.37 2 108 119 21 0 -129.35 ± 31.2
380401 ncm-dbt-05 587707 500 76 182 242 -74.79 ± 13.91 2 117 116 15 0 -153.86 ± 31.51
380400 ncm-dbt-04 572114 500 80 166 254 -60.36 ± 14.35 2 104 122 22 0 -121.46 ± 30.78
380399 ncm-dbt-02 584117 500 82 171 247 -62.51 ± 14.72 2 109 115 24 0 -126.18 ± 31.84
380398 ncm-dbt-01 583237 500 88 165 247 -53.93 ± 15.63 0 113 101 36 0 -110.6 ± 33.82
380397 ncm-dbt-03 587325 500 91 171 238 -56.07 ± 14.83 2 103 118 27 0 -112.14 ± 31.42
380396 ncm-dbt-04 573932 500 98 183 219 -59.64 ± 14.04 3 98 130 19 0 -118.33 ± 29.54
380395 ncm-dbt-05 586604 500 80 170 250 -63.23 ± 15.14 4 106 117 22 1 -126.18 ± 31.53
380394 ncm-dbt-02 588260 500 89 177 234 -61.79 ± 13.99 0 109 120 21 0 -127.76 ± 31.05

Commit

Commit ID 18dcf1f09754284325157f2d270df10a09297958
Author Tomasz Sobczyk
Date 2021-08-20 06:50:25 UTC
Optimize and tidy up affine transform code. The new network caused some issues initially due to the very narrow neuron set between the first two FC layers. Necessary changes were hacked together to make it work. This patch is a mature approach to make the affine transform code faster, more readable, and easier to maintain should the layer sizes change again. The following changes were made: * ClippedReLU always produces a multiple of 32 outputs. This is about as good of a solution for AffineTransform's SIMD requirements as it can get without a bigger rewrite. * All self-contained simd helpers are moved to a separate file (simd.h). Inline asm is utilized to work around GCC's issues with code generation and register assignment. See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101693, https://godbolt.org/z/da76fY1n7 * AffineTransform has 2 specializations. While it's more lines of code due to the boilerplate, the logic in both is significantly reduced, as these two are impossible to nicely combine into one. 1) The first specialization is for cases when there's >=128 inputs. It uses a different approach to perform the affine transform and can make full use of AVX512 without any edge cases. Furthermore, it has higher theoretical throughput because less loads are needed in the hot path, requiring only a fixed amount of instructions for horizontal additions at the end, which are amortized by the large number of inputs. 2) The second specialization is made to handle smaller layers where performance is still necessary but edge cases need to be handled. AVX512 implementation for this was ommited by mistake, a remnant from the temporary implementation for the new... This could be easily reintroduced if needed. A slightly more detailed description of both implementations is in the code. Overall it should be a minor speedup, as shown on fishtest: passed STC: LLR: 2.96 (-2.94,2.94) <-0.50,2.50> Total: 51520 W: 4074 L: 3888 D: 43558 Ptnml(0-2): 111, 3136, 19097, 3288, 128 and various tests shown in the pull request closes https://github.com/official-stockfish/Stockfish/pull/3663 No functional change
Copyright 2011–2024 Next Chess Move LLC