Commit Graph

5398 Commits

Author SHA1 Message Date
noobpwnftw
411adab149 Merge remote-tracking branch 'remotes/nodchip/master' into trainer 2020-09-23 18:29:30 +08:00
Joost VandeVondele
61bc8d12d3 Fix some races in learning
declare a few variables atomic.

Other races remain...
2020-09-19 10:09:30 +09:00
Joost VandeVondele
e8472b5fbe Fix races in gensfen as detected with thread sanitizer.
RootInTB was an incorrectly shared global, probably leading to wrong scoreing

Minor:
 setting TB global state from input by all threads (all threads write same values)
 setting Limits global state by all threads (idem)
 thread counting for finalization

CI can be enabled once races are fixed in the learner, manually goes like:
```
make clean && make -j2 ARCH=x86-64-modern sanitize=thread    optimize=no debug=yes build
../tests/instrumented_learn.sh --sanitizer-thread
```

Needs some review.
2020-09-19 10:08:44 +09:00
noobpwnftw
26f63fe741 Merge remote-tracking branch 'remotes/origin/master' into trainer 2020-09-19 03:38:37 +08:00
noobpwnftw
a47a3bfc7c Merge remote-tracking branch 'remotes/nodchip/master' into trainer 2020-09-19 02:14:17 +08:00
syzygy1
8b8a510fd6 Use tiling to speed up accumulator refreshes and updates
Perform the update and refresh operations tile by tile in a local
array of vectors. By selecting the array size carefully, we
achieve that the compiler keeps the whole array in vector registers.

Idea and original implementation by @sf-x.

STC: https://tests.stockfishchess.org/tests/view/5f623eec912c15f19854b855
LLR: 2.94 (-2.94,2.94) {-0.25,1.25}
Total: 4872 W: 623 L: 477 D: 3772
Ptnml(0-2): 14, 350, 1585, 450, 37

LTC: https://tests.stockfishchess.org/tests/view/5f62434e912c15f19854b860
LLR: 2.94 (-2.94,2.94) {0.25,1.25}
Total: 25808 W: 1565 L: 1401 D: 22842
Ptnml(0-2): 23, 1186, 10332, 1330, 33

closes https://github.com/official-stockfish/Stockfish/pull/3130

No functional change
2020-09-17 17:24:52 +02:00
Unai Corzo
64a63464d7 Simplify futility pruning for captures
STC https://tests.stockfishchess.org/tests/view/5f61f0e4b91f2ec371e429c2
LLR: 2.94 (-2.94,2.94) {-1.25,0.25}
Total: 75512 W: 8747 L: 8704 D: 58061
Ptnml(0-2): 440, 6589, 23683, 6576, 468

LTC https://tests.stockfishchess.org/tests/view/5f6215d3912c15f19854b801
LLR: 2.95 (-2.94,2.94) {-0.75,0.25}
Total: 92912 W: 5030 L: 4992 D: 82890
Ptnml(0-2): 88, 4363, 37532, 4369, 104

closes https://github.com/official-stockfish/Stockfish/pull/3129

bench: 3856086
2020-09-17 07:06:21 +02:00
Unai Corzo
0ca93c5b94 Remove castling extension
STC https://tests.stockfishchess.org/tests/view/5f5fa5348fbc1c8a3f476eca
LLR: 2.94 (-2.94,2.94) {-1.25,0.25}
Total: 38520 W: 4713 L: 4610 D: 29197
Ptnml(0-2): 233, 3486, 11734, 3559, 248

LTC https://tests.stockfishchess.org/tests/view/5f62166a912c15f19854b806
LLR: 2.93 (-2.94,2.94) {-0.75,0.25}
Total: 48024 W: 2673 L: 2600 D: 42751
Ptnml(0-2): 64, 2247, 19316, 2322, 63

closes https://github.com/official-stockfish/Stockfish/pull/3128

bench: 3818400
2020-09-17 07:06:21 +02:00
GoldenRare
df43805953 Added FEN string to bench output
fixes https://github.com/official-stockfish/Stockfish/pull/3117

closes https://github.com/official-stockfish/Stockfish/pull/3118

No functional change
2020-09-17 07:06:21 +02:00
syzygy1
d86663af14 Improve NDK section in Makefile
This PR sets the "comp" variable simply to "clang",
which seems to be more consistent and allows a small simplification.

The PR also moves the section that sets "profile_make" and "profile_use" to after the NDK section,
which ensures that these variables are now set correctly for NDK/clang.

closes https://github.com/official-stockfish/Stockfish/pull/3121

No functional change
2020-09-16 21:00:14 +02:00
xoto10
5f426d8667 Use 2 * bestMoveChanges.
NNUE appears to provide a more stable eval than the classic eval,
so the time use dependencies on bestMoveChanges, fallingEval,
etc may need to change to make the best use of available time.
This change doubles the effect of totBestMoveChanges when giving
more time because the choice of best move is unstable.

STC:
LLR: 2.94 (-2.94,2.94) {-0.25,1.25}
Total: 101928 W: 11995 L: 11698 D: 78235 Elo +0.78
Ptnml(0-2): 592, 8707, 32103, 8936, 626
https://tests.stockfishchess.org/tests/view/5f538a462d02727c56b36cec

LTC:
LLR: 2.94 (-2.94,2.94) {0.25,1.25}
Total: 186392 W: 10383 L: 9877 D: 166132 Elo +0.81
Ptnml(0-2): 207, 8370, 75539, 8870, 210
https://tests.stockfishchess.org/tests/view/5f54a9712d02727c56b36d5a

closes https://github.com/official-stockfish/Stockfish/pull/3119

Bench 4222126
2020-09-16 20:56:40 +02:00
Tomasz Sobczyk
184bde47dc Add "seed" option to gensfen and learn 2020-09-16 23:09:45 +09:00
Tomasz Sobczyk
efca5d561f More PRNG seeding options 2020-09-16 23:09:45 +09:00
Tomasz Sobczyk
bc9be5a71f Allow setting PRNG seed 2020-09-16 23:09:45 +09:00
nodchip
6ae09ba266 Fixed a bug that the root color is wrong. 2020-09-16 12:10:35 +09:00
Joseph Ellis
d160436921 Update description for PruneAtShallowDepthOnPvNode 2020-09-16 10:01:09 +09:00
Sergio Vieri
7135678f71 Update default net to nn-03744f8d56d8.nnue
Equivalent to 20200914-1520

closes https://github.com/official-stockfish/Stockfish/pull/3123

Bench: 4222126
2020-09-15 07:21:04 +02:00
mckx00
35ab8254b7 Simplify StatSCore Initialization
No need to initialize StatScore at rootNode. Current Logic is redundant because at subsequent levels the grandchildren statScore is initialized to zero.

closes https://github.com/official-stockfish/Stockfish/pull/3122

Non functional change.
2020-09-15 07:19:02 +02:00
nodchip
ea5d437dbb Merge pull request #143 from Sopel97/no_eval_learn
Remove EVAL_LEARN and *learn* targets.
2020-09-14 14:37:50 +09:00
nodchip
f579beec5d Merge pull request #150 from vondele/CIconvertPlain01
add convert_plain to CI
2020-09-14 08:19:23 +09:00
Joost VandeVondele
5d088e02c8 add convert_plain to CI 2020-09-13 19:16:27 +02:00
Tomasz Sobczyk
30a1bc4c64 Change default value of "PruneAtShallowDepthOnPvNode" so that the bench matches master. 2020-09-13 14:19:30 +02:00
Tomasz Sobczyk
89f38c938b Don't prompt when the training data file doesn't exist when trying to delete it 2020-09-13 13:52:42 +02:00
Tomasz Sobczyk
2e2de7607b Add extension to the PGO_TRAINING_DATA_FILE so that the generated file name matches the one we try to delete. 2020-09-13 13:47:19 +02:00
Tomasz Sobczyk
e4a4f4001f parametrize the name of the training data file generated during pgo 2020-09-13 13:44:19 +02:00
Tomasz Sobczyk
9ee8ce67bf Move removal of generate training data file to profileclean. 2020-09-13 13:42:13 +02:00
Tomasz Sobczyk
bd434b80c6 debug=yes for last CI test 2020-09-13 13:40:56 +02:00
Tomasz Sobczyk
0f270f7cbf Merge branch 'master' into no_eval_learn 2020-09-13 13:36:16 +02:00
Tomasz Sobczyk
fb877c2c3e Add some building instructions to readme. 2020-09-13 12:14:35 +02:00
nodchip
f27c72081b Merge pull request #147 from nodchip/EvalDir-2020-09-13
Fixed a bug that an assertion fails in the trainer.
2020-09-13 17:32:44 +09:00
nodchip
cdfa71fa8e Merge branch 'master' into EvalDir-2020-09-13 2020-09-13 17:32:29 +09:00
Joost VandeVondele
3ea2d5ef61 Remove use of non-existent EvalDir option.
additionally allow all options to be converted to string.
Without this, restoring of the options (multi_think.cpp:117) can't work.

fixes https://github.com/nodchip/Stockfish/issues/128

Now gensfen/learn pass with debug=yes in CI
2020-09-13 16:38:21 +09:00
nodchip
a94a076e39 Fixed a comment. 2020-09-13 16:35:52 +09:00
nodchip
1c84da9caa Fixed a bug that an assertion fails in the trainer. if the SkipLoading is false.
Fixes #128
2020-09-13 16:32:01 +09:00
nodchip
0a5893d337 Update README.md
Updated description according to recent option changes.
2020-09-13 14:05:52 +09:00
Matthies
50b4ff8354 Add missing include to make MSVC compile 2020-09-13 09:59:20 +09:00
Tomasz Sobczyk
4b70f4bf23 Add extra ld flags to the proper variable. 2020-09-13 02:07:29 +02:00
Tomasz Sobczyk
72164ba59c Add missing -fopenmp LDFLAG 2020-09-13 02:06:33 +02:00
Tomasz Sobczyk
fbae6604b1 Remove LEARNCXXFLAGS, LEARNLDFLAGS, BLASDEFINE, BLASCXXFLAGS, BLASLDFLAGS in favor of directly modifying CXXFLAGS and LDFLAGS. 2020-09-13 00:18:01 +02:00
Tomasz Sobczyk
f049c4776a Add tests in CI to cover compilation of both blas=no and blas=yes. 2020-09-12 21:19:15 +02:00
Tomasz Sobczyk
8d1ad6fbf6 Add a makefile option to enable use of BLAS. Default to "no" 2020-09-12 21:16:27 +02:00
Tomasz Sobczyk
a6b02a61b7 Remove 32 bit builds. 2020-09-12 18:22:09 +02:00
Tomasz Sobczyk
9d84af11fe Remove remaining learn builds from CI. No replacement needed. 2020-09-12 18:20:21 +02:00
Tomasz Sobczyk
1da452029b Update travis to use build target instead of learn. 2020-09-12 16:27:35 +02:00
Tomasz Sobczyk
1e2fca4040 Move learn target to build target and profile-learn to profile-build. 2020-09-12 16:23:49 +02:00
Tomasz Sobczyk
d33e7a9b07 Remove conditional compilation on EVAL_LEARN 2020-09-12 16:19:24 +02:00
Joost VandeVondele
8d499e6efa Fix flags for dependency generation (98f24570ab) 2020-09-12 22:25:36 +09:00
Joost VandeVondele
580b09381b Add a learning command to CI
fixes a small issue, with ponder

Probably the learning command can be improved a bit, so that despite the limited data, the code coverage is better.
2020-09-12 22:25:36 +09:00
Tomasz Sobczyk
bcfe28b2ae Fix compilation of sfen_packer.cpp in debug. 2020-09-11 21:53:17 +09:00
Tomasz Sobczyk
3388c22d71 Fix incorrect use of UCI::Option of type "combo". 2020-09-11 21:53:17 +09:00