Tomasz Sobczyk and nodchip
e5f05fa2b9
Add a script to extract a contiguous range of entries from a .bin file.
2020-09-08 09:31:53 +09:00
Joost VandeVondele and nodchip
6e8f82ad76
Fix small CI failures
...
1) Only access UCI option if defined
2) disable -Werror for now.
3) disable a few target that don't have _mm_malloc.
4) Add profile-learn target, with small speedup.
5) just test on Linux + gcc (skip macOS, unclear openblas, skip linux+clang, unclear omp/std::filesystem).
2020-09-08 09:14:49 +09:00
Tomasz Sobczyk and nodchip
e638d66bbe
Only add -s flag to the linker if debug=no
2020-09-08 09:10:58 +09:00
nodchip
4cc98d80f8
Replaced the utility function to create a directory to std::filesystem.
2020-09-07 18:56:41 +09:00
nodchip
e004e47e5a
Commented out an unused function parameter to remove a compile warning.
2020-09-07 16:21:40 +09:00
Joost VandeVondele and nodchip
bccc71afb4
fix openblas package name?
2020-09-07 16:16:08 +09:00
Joost VandeVondele and nodchip
31e8be3008
First little CI step for the learner
2020-09-07 15:46:09 +09:00
Joost VandeVondele and nodchip
e9e52faae7
Typo fix
2020-09-07 15:21:50 +09:00
Joost VandeVondele and nodchip
edbbc1a4df
Remove some warnings
2020-09-07 09:20:47 +09:00
Joost VandeVondele and nodchip
3a06de298b
Define BLAS variables in Makefile
...
makes it a little easier to change the BLAS library used,
doesn't hardcode the mingw headers. Works on Linux with openblas installed.
Should be no change on Windows.
2020-09-07 09:19:31 +09:00
Joost VandeVondele and nodchip
3bf418e63f
Fix some uninitialized variables with gensfen
...
fixes valgrind errors as seen with:
```
setoption name Use NNUE value true
isready
gensfen depth 6 loop 10 use_draw_in_training_data_generation 1 eval_limit 32000 output_file_name training_data/training_data.bin use_raw_nnue_eval 0
quit
```
the latter script now runs without valgrind errors on linux
2020-09-07 09:01:17 +09:00
Tomasz Sobczyk and nodchip
e9e6e47a93
Fix write_out_draw_game_in_training_data_generation flag not being respected.
2020-09-06 22:00:51 +09:00
Tomasz Sobczyk and nodchip
0612adec41
Fix incorrect early exit in evaluate_leaf.
2020-09-05 08:43:34 +09:00
SFisGOD and Joost VandeVondele
d539da19d2
Use classical eval more often
...
If there is a moderate imbalance, use classical eval with small probability (1/16),
as derived from the node counter.
STC:
LLR: 2.94 (-2.94,2.94) {-0.25,1.25}
Total: 32320 W: 3562 L: 3377 D: 25381
Ptnml(0-2): 144, 2609, 10478, 2776, 153
https://tests.stockfishchess.org/tests/view/5f520615ba100690c5cc5f80
LTC:
LLR: 2.95 (-2.94,2.94) {0.25,1.25}
Total: 21032 W: 1116 L: 974 D: 18942
Ptnml(0-2): 20, 837, 8664, 971, 24
https://tests.stockfishchess.org/tests/view/5f522eaaba100690c5cc5f8c
closes https://github.com/official-stockfish/Stockfish/pull/3107
Bench: 4109324
2020-09-04 18:58:34 +02:00
Vizvezdenec and Joost VandeVondele
9a063fc3cb
Adjust penalty on refuted early quiet moves
...
This patch changes how previous early moves are penalized in case
search finds a best move. Here, the first quiet move that was not
a transposition table move is penalized.
passed STC
https://tests.stockfishchess.org/tests/view/5f51d839ba100690c5cc5f69
LLR: 2.94 (-2.94,2.94) {-0.25,1.25}
Total: 10088 W: 1150 L: 997 D: 7941
Ptnml(0-2): 41, 772, 3278, 899, 54
passed LTC
https://tests.stockfishchess.org/tests/view/5f51e435ba100690c5cc5f76
LLR: 2.93 (-2.94,2.94) {0.25,1.25}
Total: 30808 W: 1564 L: 1405 D: 27839
Ptnml(0-2): 19, 1245, 12717, 1404, 19
closes https://github.com/official-stockfish/Stockfish/pull/3106
bench 3983758
2020-09-04 18:52:46 +02:00
Sergio Vieri and Joost VandeVondele
9cc482c788
Update default net to nn-308d71810dff.nnue
...
equivalent to 20200903-1739
Net trained from scratch, so it has quite different features extracted compared to the previous net (82215d0fd0df).
STC:
LLR: 2.98 (-2.94,2.94) {-0.25,1.25}
Total: 108328 W: 14048 L: 13719 D: 80561
Ptnml(0-2): 842, 10039, 32062, 10390, 831
https://tests.stockfishchess.org/tests/view/5f50e053ba100690c5cc5f00
LTC:
LLR: 2.96 (-2.94,2.94) {0.25,1.25}
Total: 13872 W: 1059 L: 890 D: 11923
Ptnml(0-2): 30, 724, 5270, 871, 41
https://tests.stockfishchess.org/tests/view/5f51821fba100690c5cc5f36
closes https://github.com/official-stockfish/Stockfish/pull/3104
Bench: 3832716
2020-09-04 08:03:43 +02:00
VoyagerOne and Joost VandeVondele
2a69611509
LMR Simplification
...
remove reduction at non-check cut nodes for second move at low depths
STC:
LLR: 2.95 (-2.94,2.94) {-1.25,0.25}
Total: 61712 W: 6594 L: 6543 D: 48575
Ptnml(0-2): 293, 5085, 20082, 5070, 326
https://tests.stockfishchess.org/tests/view/5f5007d6ba100690c5cc5ea9
LTC:
LLR: 2.94 (-2.94,2.94) {-0.75,0.25}
Total: 57544 W: 2983 L: 2925 D: 51636
Ptnml(0-2): 47, 2568, 23495, 2604, 58
https://tests.stockfishchess.org/tests/view/5f50c597ba100690c5cc5ef7
closes https://github.com/official-stockfish/Stockfish/pull/3103
Bench: 3952302
2020-09-04 08:00:45 +02:00
Unai Corzo and Joost VandeVondele
d6530f7d49
Simplify singularQuietLMR
...
remove formerPV dependence
STC https://tests.stockfishchess.org/tests/view/5f4cb922ba100690c5cc5d35
LLR: 2.96 (-2.94,2.94) {-1.25,0.25}
Total: 113672 W: 12347 L: 12368 D: 88957
Ptnml(0-2): 566, 9537, 36699, 9420, 614
LTC https://tests.stockfishchess.org/tests/view/5f4e8474ba100690c5cc5e12
LLR: 2.93 (-2.94,2.94) {-0.75,0.25}
Total: 43032 W: 2298 L: 2227 D: 38507
Ptnml(0-2): 45, 1940, 17475, 2011, 45
closes https://github.com/official-stockfish/Stockfish/pull/3102
bench: 3290084
2020-09-04 07:58:13 +02:00
Unai Corzo and Joost VandeVondele
0e1f734b05
Less pruning in qsearch
...
do not prune moves that give discovery checks, even if with negative SSE.
STC https://tests.stockfishchess.org/tests/view/5f4cb5e8ba100690c5cc5d25
LLR: 2.96 (-2.94,2.94) {-0.25,1.25}
Total: 91328 W: 9940 L: 9667 D: 71721
Ptnml(0-2): 491, 7345, 29693, 7670, 465
LTC https://tests.stockfishchess.org/tests/view/5f4dbc2eba100690c5cc5dac
LLR: 2.97 (-2.94,2.94) {0.25,1.25}
Total: 52448 W: 2799 L: 2586 D: 47063
Ptnml(0-2): 53, 2220, 21459, 2445, 47
closes https://github.com/official-stockfish/Stockfish/pull/3098
bench: 4031192
2020-09-04 07:55:41 +02:00
Joost VandeVondele
571c2d6d8d
Restore development version
...
have fun!
No functional change
2020-09-04 07:46:06 +02:00
Tomasz Sobczyk and nodchip
327e92aefe
Remove trailing whitespaces.
2020-09-03 19:22:52 +09:00
Tomasz Sobczyk and nodchip
2688194d44
Fix #91
2020-09-03 19:22:03 +09:00
Tomasz Sobczyk and nodchip
9d5dc3d33f
Fix compilation issues.
2020-09-03 19:21:27 +09:00
Joost VandeVondele
c306d83869
Stockfish 12
...
Official release version of Stockfish 12
Bench: 3624569
-----------------------
It is our pleasure to release Stockfish 12 to users world-wide
Downloads will be freely available at
https://stockfishchess.org/download/
This version 12 of Stockfish plays significantly stronger than
any of its predecessors. In a match against Stockfish 11,
Stockfish 12 will typically win at least ten times more game pairs
than it loses.
This jump in strength, visible in regular progression tests during
development[1], results from the introduction of an efficiently
updatable neural network (NNUE) for the evaluation in Stockfish[2],
and associated tuning of the engine as a whole. The concept of the
NNUE evaluation was first introduced in shogi, and ported to
Stockfish afterward. Stockfish remains a CPU-only engine, since the
NNUE networks can be very efficiently evaluated on CPUs. The
recommended parameters of the NNUE network are embedded in
distributed binaries, and Stockfish will use NNUE by default.
Both the NNUE and the classical evaluations are available, and
can be used to assign values to positions that are later used in
alpha-beta (PVS) search to find the best move. The classical
evaluation computes this value as a function of various chess
concepts, handcrafted by experts, tested and tuned using fishtest.
The NNUE evaluation computes this value with a neural network based
on basic inputs. The network is optimized and trained on the
evaluations of millions of positions.
The Stockfish project builds on a thriving community of enthusiasts
that contribute their expertise, time, and resources to build a free
and open source chess engine that is robust, widely available, and
very strong. We invite chess fans to join the fishtest testing
framework and programmers to contribute on github[3].
Stay safe and enjoy chess!
The Stockfish team
[1] https://github.com/glinscott/fishtest/wiki/Regression-Tests
[2] https://github.com/official-stockfish/Stockfish/commit/84f3e867903f62480c33243dd0ecbffd342796fc
[3] https://stockfishchess.org/get-involved/
sf_12
2020-09-02 16:19:30 +02:00
Joost VandeVondele
aa2de71230
Update CPU contributors list
...
with fishtest data of Sept. 2 2020
closes https://github.com/official-stockfish/Stockfish/pull/3095
No functional change
2020-09-02 16:18:58 +02:00
Tomasz Sobczyk and nodchip
c17f2b15fd
General cleanup of learner.cpp.
2020-09-02 23:08:22 +09:00
Joost VandeVondele
be87517734
Only use MADV_RANDOM if defined
...
needed to compile on Haiku.
fixes https://github.com/official-stockfish/Stockfish/issues/3093
closes https://github.com/official-stockfish/Stockfish/pull/3094
No functional change
2020-09-02 07:32:10 +02:00
VoyagerOne and Joost VandeVondele
a8bbaa1795
LMR Root Node Simplification
...
Simplify LMR at Root node
STC:
LLR: 2.94 (-2.94,2.94) {-1.25,0.25}
Total: 71520 W: 7649 L: 7614 D: 56257
Ptnml(0-2): 346, 5845, 23349, 5868, 352
https://tests.stockfishchess.org/tests/view/5f4be8c0ba100690c5cc5cbb
LTC:
LLR: 2.95 (-2.94,2.94) {-0.75,0.25}
Total: 74832 W: 3997 L: 3948 D: 66887
Ptnml(0-2): 77, 3422, 30362, 3485, 70
https://tests.stockfishchess.org/tests/view/5f4c603eba100690c5cc5d0e
closes https://github.com/official-stockfish/Stockfish/pull/3091
Bench: 3624569
2020-09-01 09:31:40 +02:00
Joost VandeVondele
61381372ec
Always print an info line before a bestmove
...
if very few nodes are being searched before a bestmove is reported,
an info line might be missing.
fixes https://github.com/official-stockfish/Stockfish/issues/2757
closes https://github.com/official-stockfish/Stockfish/pull/3088
no functional change
2020-09-01 09:26:56 +02:00
mstembera and Joost VandeVondele
a057f170c6
Use llvm linker with clang on windows for LTO.
...
other linkers might fail to link during the LTO phase.
The linker might have to be installed using
`pacman -Syu mingw-w64-x86_64-lld`
closes https://github.com/official-stockfish/Stockfish/pull/3084
No functional change.
2020-09-01 09:26:08 +02:00
mstembera and Joost VandeVondele
a0afe32d16
Use stable sort to make sure bench with TB yields same results everywhere.
...
std::sort() is not stable so different implementations can produce different results:
use the stable version instead.
Observed for '8/6k1/5r2/8/8/8/1K6/Q7 w - - 0 1' yielding different bench results for gcc and MSVC
and 3-4-5 syzygy TB prior to this patch.
closes https://github.com/official-stockfish/Stockfish/pull/3083
No functional change.
2020-09-01 09:25:44 +02:00
FauziAkram and Joost VandeVondele
e0bafa1911
Update parametes in classical evaluation.
...
Passed STC (NNUE=False):
https://tests.stockfishchess.org/tests/view/5f42edfe5089a564a10d84a0
LLR: 2.96 (-2.94,2.94) {-0.25,1.25}
Total: 13840 W: 2591 L: 2336 D: 8913
Ptnml(0-2): 194, 1453, 3387, 1676, 210
Passed LTC (NNUE=False):
https://tests.stockfishchess.org/tests/view/5f4369795089a564a10d84d8
LLR: 2.95 (-2.94,2.94) {0.25,1.25}
Total: 159744 W: 19430 L: 18850 D: 121464
Ptnml(0-2): 960, 14185, 49030, 14709, 988
closes https://github.com/official-stockfish/Stockfish/pull/3080
bench: 3736029
2020-08-30 14:22:07 +02:00
VoyagerOne and Joost VandeVondele
9b5b9ec9a6
QS Pruning Simplification
...
Remove depth dependence in QS pruning
STC:
LLR: 2.95 (-2.94,2.94) {-1.25,0.25}
Total: 40536 W: 4442 L: 4358 D: 31736
Ptnml(0-2): 209, 3330, 13118, 3390, 221
https://tests.stockfishchess.org/tests/view/5f49035b3def6407861152f9
LTC:
LLR: 2.95 (-2.94,2.94) {-0.75,0.25}
Total: 97104 W: 5164 L: 5130 D: 86810
Ptnml(0-2): 103, 4478, 39377, 4470, 124
https://tests.stockfishchess.org/tests/view/5f4939d53def640786115322
closes https://github.com/official-stockfish/Stockfish/pull/3077
Bench: 3865238
2020-08-30 14:17:23 +02:00
MJZ1977 and Joost VandeVondele
c02b3a4c7a
Add / remove leaves from search tree ttPv
...
add if previous leaf is in search tree and we didn't find a counter move
else remove the position if the leaf is the last one in search tree.
STC : https://tests.stockfishchess.org/tests/view/5f49203c3def640786115314
LLR: 2.95 (-2.94,2.94) {-0.25,1.25}
Total: 29968 W: 3381 L: 3195 D: 23392
Ptnml(0-2): 146, 2432, 9671, 2560, 175
LTC : https://tests.stockfishchess.org/tests/view/5f494bea3def640786115336
LLR: 2.96 (-2.94,2.94) {0.25,1.25}
Total: 84952 W: 4619 L: 4333 D: 76000
Ptnml(0-2): 86, 3765, 34481, 4065, 79
closes https://github.com/official-stockfish/Stockfish/pull/3075
Bench 3527337
2020-08-30 14:13:16 +02:00
Unai Corzo and Joost VandeVondele
d90d893b5e
Reintroduce depth reduction
...
Reintroduce depth reduction if the position is not in TT.
STC https://tests.stockfishchess.org/tests/view/5f4652e85089a564a10d868c
LLR: 2.97 (-2.94,2.94) {-0.25,1.25}
Total: 40240 W: 4535 L: 4331 D: 31374
Ptnml(0-2): 215, 3276, 12969, 3410, 250
LTC https://tests.stockfishchess.org/tests/view/5f46ca5e5089a564a10d86f3
LLR: 2.93 (-2.94,2.94) {0.25,1.25}
Total: 63096 W: 3426 L: 3188 D: 56482
Ptnml(0-2): 51, 2798, 25645, 2970, 84
closes https://github.com/official-stockfish/Stockfish/pull/3072
bench: 3611906
2020-08-30 14:04:29 +02:00
Joost VandeVondele
e4ed7d3dd7
Cleaner make help
...
do not print details if ARCH is an empty string. Follow up for b0b4ca17db
https://github.com/official-stockfish/Stockfish/pull/3071
No functional change
2020-08-30 14:03:02 +02:00
nodchip
7d6668515c
Added -static link option to the learn and profile-learn targets.
2020-08-30 14:54:07 +09:00
nodchip and GitHub
bc90567e09
Merge pull request #94 from nodchip/nnue-player-merge-2020-08-28
...
Nnue player merge 2020 08 28
2020-08-30 09:27:12 +09:00
Stéphane Nicolet and Joost VandeVondele
406979ea12
Embed default net, and simplify using non-default nets
...
covers the most important cases from the user perspective:
It embeds the default net in the binary, so a download of that binary will result
in a working engine with the default net. The engine will be functional in the default mode
without any additional user action.
It allows non-default nets to be used, which will be looked for in up to
three directories (working directory, location of the binary, and optionally a specific default directory).
This mechanism is also kept for those developers that use MSVC,
the one compiler that doesn't have an easy mechanism for embedding data.
It is possible to disable embedding, and instead specify a specific directory, e.g. linux distros might want to use
CXXFLAGS="-DNNUE_EMBEDDING_OFF -DDEFAULT_NNUE_DIRECTORY=/usr/share/games/stockfish/" make -j ARCH=x86-64 profile-build
passed STC non-regression:
https://tests.stockfishchess.org/tests/view/5f4a581c150f0aef5f8ae03a
LLR: 2.95 (-2.94,2.94) {-1.25,-0.25}
Total: 66928 W: 7202 L: 7147 D: 52579
Ptnml(0-2): 291, 5309, 22211, 5360, 293
closes https://github.com/official-stockfish/Stockfish/pull/3070
fixes https://github.com/official-stockfish/Stockfish/issues/3030
No functional change.
2020-08-29 21:56:00 +02:00
nodchip and GitHub
d258662383
Update README.md
2020-08-29 09:12:10 +09:00
nodchip
9f2f31632c
Fixed build errors.
2020-08-29 08:17:24 +09:00
nodchip
f7bc4e6e45
Fixed compilation errors.
2020-08-29 00:56:05 +09:00
nodchip
906c18eb46
Merge branch 'master' of github.com:official-stockfish/Stockfish into nnue-player-merge-2020-08-28
...
# Conflicts:
# README.md
# src/Makefile
# src/search.cpp
# src/types.h
# src/uci.cpp
# src/ucioption.cpp
2020-08-28 11:26:11 +09:00
hero2017 and nodchip
5637996f79
Resolve #92
...
If we're defining something in a header then we should declare it.
2020-08-28 11:20:03 +09:00
nodchip and GitHub
def6ec4d16
Merge pull request #90 from tttak/wdl_20200824
...
Use winning_percentage_wdl in learn
2020-08-28 10:06:33 +09:00
tttak
03b43079eb
Merge branch 'nodchip_master' into wdl_20200824
2020-08-28 09:16:07 +09:00
nodchip
763e72cc9f
Changed the default value of use_raw_nnue_eval. Updated a source code comment.
2020-08-27 23:49:58 +09:00
nodchip
9fc3ff4c30
Added use_raw_nnue_eval option to return raw NNUE eval value in evaluate().
2020-08-27 23:48:28 +09:00
VoyagerOne and Joost VandeVondele
242a7d9fea
Simplify MCP in QS
...
Simplify moveCount pruning in QS by removing depth dependency.
STC
LLR: 2.94 (-2.94,2.94) {-1.25,0.25}
Total: 42960 W: 4741 L: 4661 D: 33558
Ptnml(0-2): 218, 3574, 13804, 3678, 206
https://tests.stockfishchess.org/tests/view/5f42e3f75089a564a10d8493
LTC
LLR: 2.94 (-2.94,2.94) {-0.75,0.25}
Total: 66672 W: 3563 L: 3508 D: 59601
Ptnml(0-2): 71, 3064, 26996, 3149, 56
https://tests.stockfishchess.org/tests/view/5f4353285089a564a10d84d0
closes https://github.com/official-stockfish/Stockfish/pull/3067
Bench: 4074430
2020-08-26 07:19:35 +02:00
VoyagerOne and Joost VandeVondele
95b8f3f800
Remove Reduce Depth
...
Remove Reduce Depth at PV nodes.
STC:
LLR: 2.94 (-2.94,2.94) {-1.25,0.25}
Total: 56760 W: 6299 L: 6236 D: 44225
Ptnml(0-2): 286, 4843, 18076, 4872, 303
https://tests.stockfishchess.org/tests/view/5f41356087a5c3c63d8f53c9
LTC:
LLR: 2.95 (-2.94,2.94) {-0.75,0.25}
Total: 17496 W: 954 L: 865 D: 15677
Ptnml(0-2): 13, 768, 7098, 855, 14
https://tests.stockfishchess.org/tests/view/5f41bb7687a5c3c63d8f53f9
closes https://github.com/official-stockfish/Stockfish/pull/3055
Bench: 3555051
2020-08-26 07:16:50 +02:00