Stefan Geschwentner
9587eeeb5e
Tweak cutnode reduction
...
Less reduction for second move at non-check CUT node with depth <= 10.
STC:
LLR: 2.94 (-2.94,2.94) {-0.50,1.50}
Total: 38680 W: 7490 L: 7245 D: 23945
Ptnml(0-2): 643, 4441, 8967, 4606, 683
https://tests.stockfishchess.org/tests/view/5f21e1782f7e63962b99f451
LTC:
LLR: 2.95 (-2.94,2.94) {0.25,1.75}
Total: 71976 W: 9003 L: 8636 D: 54337
Ptnml(0-2): 440, 6414, 21972, 6663, 499
https://tests.stockfishchess.org/tests/view/5f2245762f7e63962b99f4bd
closes https://github.com/official-stockfish/Stockfish/pull/2868
Bench: 4746616
2020-07-31 10:12:54 +02:00
Stéphane Nicolet
33f3cfae00
Improve handling of queen imbalance
...
We double the bonus for potential threats by minors and rooks against
our queen, in case of "queen vs pieces imbalance". Hopefully this will
improve a little bit the evaluation for this well-known Stockfish weakness.
passed STC:
LLR: 2.93 (-2.94,2.94) {-0.50,1.50}
Total: 72976 W: 14003 L: 13710 D: 45263
Ptnml(0-2): 1218, 8370, 17094, 8513, 1293
https://tests.stockfishchess.org/tests/view/5efa50eb020eec13834a977d
passed LTC:
LLR: 2.93 (-2.94,2.94) {0.25,1.75}
Total: 22232 W: 2779 L: 2560 D: 16893
Ptnml(0-2): 129, 1885, 6896, 2050, 156
https://tests.stockfishchess.org/tests/view/5f1fdd2dc09435d870cb9f13
closes https://github.com/official-stockfish/Stockfish/pull/2864
Bench: 4367349
2020-07-31 10:01:39 +02:00
UnaiCorzo
62d3106caa
Remove late irreversible move extension
...
We simplify away the late irreversible move extension, which
does not seem to be necessary in the current master.
STC
LLR: 2.93 (-2.94,2.94) {-1.50,0.50}
Total: 38584 W: 7464 L: 7342 D: 23778
Ptnml(0-2): 581, 4328, 9365, 4424, 594
https://tests.stockfishchess.org/tests/view/5f1c9669c09435d870cb9de9
LTC
LLR: 2.94 (-2.94,2.94) {-1.50,0.50}
Total: 27840 W: 3417 L: 3353 D: 21070
Ptnml(0-2): 120, 2315, 8994, 2363, 128
https://tests.stockfishchess.org/tests/view/5f1d2e22c09435d870cb9e21
closes https://github.com/official-stockfish/Stockfish/pull/2836
bench: 4829420
2020-07-31 09:55:56 +02:00
protonspring
f0abde241d
Remove conditional_more_than_two().
...
This is a functional simplification that removes the conditional_more_than_two()
function, which was quite strange and kooky. Note the very minor change to the bench
value.
See this thread for relevant comments on the passing branch:
protonspring/Stockfish@d89730d...ff35b50
STC
LLR: 2.95 (-2.94,2.94) {-1.50,0.50}
Total: 59760 W: 11411 L: 11311 D: 37038
Ptnml(0-2): 992, 6863, 14044, 7015, 966
https://tests.stockfishchess.org/tests/view/5f179988c09435d870cb9b9a
LTC
LLR: 2.93 (-2.94,2.94) {-1.50,0.50}
Total: 45208 W: 5553 L: 5497 D: 34158
Ptnml(0-2): 315, 4081, 13761, 4127, 320
https://tests.stockfishchess.org/tests/view/5f184847c09435d870cb9bee
closes https://github.com/official-stockfish/Stockfish/pull/2826
Bench: 4578290
2020-07-31 09:47:24 +02:00
nodchip
c0e1235fef
Added a description to Makefile.
2020-07-20 17:36:09 +09:00
No name
74049a450c
Add NNUE targets to the output of 'make help'
2020-07-20 17:29:20 +09:00
nodchip
fbdb373b64
Changed to set the binary directory to the current working directory.
2020-07-20 17:17:50 +09:00
mstembera
77018c77cc
Fix profile builds for AVX512.
2020-07-19 21:25:50 +09:00
No name
fd78fb05f6
Hide NNUE options if building without NNUE support
...
Also remove an unused option.
2020-07-19 20:17:01 +09:00
nodchip
afd7d0ea4d
Fixed a bug that Makefile specifies -mpopcnt for armv8-a.
2020-07-19 18:34:35 +09:00
nodchip
36092b855a
Removed the x86-64-ssse3-popcnt architecture.
2020-07-19 14:17:35 +09:00
nodchip
3bbe4802b1
Removed the sse41-popcnt architecture.
2020-07-19 14:02:49 +09:00
nodchip
c001a4e62d
Revert "Removed x86-64-ssse3-popcnt and x86-64-sse41-popcnt."
...
This reverts commit 92c2167481 .
2020-07-19 13:58:19 +09:00
No name
1536e31065
Load the parameter set on an `isready' as well
...
Unbreaks Scid vs. PC, which doesn't send `ucinewgame'.
2020-07-19 13:22:40 +09:00
nodchip
92c2167481
Removed x86-64-ssse3-popcnt and x86-64-sse41-popcnt.
2020-07-19 12:52:20 +09:00
nodchip
a4786db4c2
Added support for architectures which supports SSE3+POPCNT, SSSE3+POPCNT and SSE41+POPCNT.
2020-07-19 12:41:50 +09:00
nodchip
c24ad8d8b5
Supported sse3 build.
2020-07-19 12:26:37 +09:00
mstembera
961a4dad5c
Add AVX512 support.
...
bench: 3909820
2020-07-19 12:07:28 +09:00
Vizvezdenec
d89730d5c8
Do not overwrite valuable TT data after probcut.
...
This patch allows an engine to write probcut data only in case
the probcut search depth is greater than transposition table depth.
passed STC
https://tests.stockfishchess.org/tests/view/5f0b52e959f6f035328949a6
LLR: 2.97 (-2.94,2.94) {-0.50,1.50}
Total: 52544 W: 10145 L: 9880 D: 32519
Ptnml(0-2): 853, 6097, 12121, 6334, 867
passed LTC
https://tests.stockfishchess.org/tests/view/5f0bd94c59f6f035328949f3
LLR: 2.93 (-2.94,2.94) {0.25,1.75}
Total: 49576 W: 6164 L: 5863 D: 37549
Ptnml(0-2): 297, 4371, 15218, 4538, 364
closes https://github.com/official-stockfish/Stockfish/pull/2815
bench 4578298
2020-07-17 20:28:44 +02:00
mstembera
c3092c54bc
Multiple lazy stages.
...
An extension of the lazy eval idea: when the score is sufficiently large
we now skip more granular parts of the eval.
Inspired by an original patch by Moez Jellouli
https://tests.stockfishchess.org/tests/view/5f03b2a159f6f03532894529
Credit to him!
STC https://tests.stockfishchess.org/tests/view/5f0a862c59f6f03532894924
LLR: 2.95 (-2.94,2.94) {-0.50,1.50}
Total: 13504 W: 2684 L: 2472 D: 8348
Ptnml(0-2): 229, 1496, 3111, 1666, 250
LTC https://tests.stockfishchess.org/tests/view/5f0ac0e159f6f0353289495b
LLR: 2.94 (-2.94,2.94) {0.25,1.75}
Total: 31312 W: 3926 L: 3677 D: 23709
Ptnml(0-2): 185, 2773, 9509, 2986, 203
closes https://github.com/official-stockfish/Stockfish/pull/2814
bench: 4541608
2020-07-17 20:24:02 +02:00
nodchip
7a13d4ed60
Changed the default eval file path so that more GUIs can use Stockfish NNUE.
2020-07-17 15:40:01 +09:00
No name
961047ed6e
Experimental support for PGO builds of NNUE
...
Only 'nnue' target and only gcc/mingw.
(does not clean profile data generated by other compilers)
To use:
make profile-nnue ARCH=arch
(see 'make help' for list of supported archs)
2020-07-16 08:53:03 +09:00
J. Oster
e29499ee4b
Use the path and filename for restoring parameter files.
2020-07-15 19:29:29 +09:00
nodchip
686a5a0df9
Fixed a bug that gensfen command does not accept the use_draw_in_training_data_generation option.
2020-07-13 22:25:23 +09:00
syzygy1
6c197c3964
Corrects a functional change in a cleanup patch.
...
This corrects a functional change in
https://github.com/official-stockfish/Stockfish/commit/ddcbacd04d1c860e808202ce8c1206c8acdca627
changing evaluation of KPPvK. Bench remains unchanged at low depth
With this patch, 8/8/5k1p/8/7p/7K/8/8 b - - 1 11 is again correctly evaluated as a draw.
closes https://github.com/official-stockfish/Stockfish/pull/2807
Bench: 4366686
2020-07-11 22:32:34 +02:00
No name
fcb391919f
Disable EVAL_HASH for 'nnue' target
...
Gives a 7% speed gain for me, without any parameter set loaded
(all-zero).
2020-07-11 19:29:05 +09:00
joergoster
db0615eed9
Merge branch 'master' into sf-nnue-update
2020-07-11 12:03:17 +02:00
SFisGOD
1f3bd968bb
Introduce bad outpost penalty
...
In some French games, Stockfish likes to bring the Knight to a bad outpost spot. This is evident in TCEC S18 Superfinal Game 63, where there is a Knight outpost on the queenside but is actually useless. Stockfish is effectively playing a piece down while holding ground against Leela's break on the kingside.
This patch turns the +56 mg bonus for a Knight outpost into a -7 mg penalty if it satisfies the following conditions:
* The outpost square is not on the CenterFiles (i.e. not on files C,D,E and F)
* The knight is not attacking non pawn enemies.
* The side where the outpost is located contains only few enemies, with a particular conditional_more_than_two() implementation
Thank you to apospa...@gmail.com for bringing this to our attention and for providing insights.
See https://groups.google.com/forum/?fromgroups=#!topic/fishcooking/dEXNzSIBgZU
Reference game: https://tcec-chess.com/#div=sf&game=63&season=18
Passed STC:
LLR: 2.93 (-2.94,2.94) {-0.50,1.50}
Total: 6960 W: 1454 L: 1247 D: 4259
Ptnml(0-2): 115, 739, 1610, 856, 160
https://tests.stockfishchess.org/tests/view/5f08221059f6f0353289477e
Passed LTC:
LLR: 2.98 (-2.94,2.94) {0.25,1.75}
Total: 21440 W: 2767 L: 2543 D: 16130
Ptnml(0-2): 122, 1904, 6462, 2092, 140
https://tests.stockfishchess.org/tests/view/5f0838ed59f6f035328947a2
various related tests show strong test results, but so far no generalizations or simplifications of conditional_more_than_two() are found. See PR for details.
closes https://github.com/official-stockfish/Stockfish/pull/2803
Bench: 4366686
2020-07-11 11:23:55 +02:00
Vizvezdenec
5e91c5dcc8
Maximize usage of transposition table in probcut
...
Probcut is a heuristic that wasn't changed a lot in past years,
all attempts to change it using information / writing info to transposition table failed.
This patch has a number of differences that can be summarized as follows:
* For TT write/read we use depth - 3. Because probcut search is depth - 4 but we actually do the move prior to it so effectively we do depth - 3 search;
* In any case of depth of eval from transposition table being >= depth - 3 we either produce cutoff or refuse to even do probcut search, this is allowing us to write info of probcut to transposition table because we know that we wouldn't be overwriting some deeper data with our depth - 3 search - this is an important aspect of this patch;
* For some not really known reason this patch completely ignores tte->bound() - which was the case for previous patch that made probcut interact with TT, maybe 2) is the reason, although it's unproven.
A first version of this patch passed STC and LTC
passed STC
https://tests.stockfishchess.org/tests/view/5f05908a59f6f03532894613
LLR: 2.95 (-2.94,2.94) {-0.50,1.50}
Total: 95776 W: 18300 L: 17973 D: 59503
Ptnml(0-2): 1646, 10944, 22377, 11279, 1642
passed LTC
https://tests.stockfishchess.org/tests/view/5f06b54059f6f035328946bb
LLR: 2.94 (-2.94,2.94) {0.25,1.75}
Total: 57128 W: 7266 L: 6938 D: 42924
Ptnml(0-2): 372, 5163, 17217, 5389, 423
However, an additional bugfix was needed to avoid checking a condition on ttMove if was not available. This passed non-regression bounds on top of the first version:
at STC
https://tests.stockfishchess.org/tests/view/5f080e5059f6f03532894766
LLR: 2.94 (-2.94,2.94) {-1.50,0.50}
Total: 14096 W: 2800 L: 2628 D: 8668
Ptnml(0-2): 225, 1620, 3238, 1688, 277
at LTC
https://tests.stockfishchess.org/tests/view/5f0836a559f6f0353289479c
LLR: 2.95 (-2.94,2.94) {-1.50,0.50}
Total: 25352 W: 3228 L: 3139 D: 18985
Ptnml(0-2): 175, 2350, 7549, 2415, 187
closes https://github.com/official-stockfish/Stockfish/pull/2804
Bench 4540940
2020-07-11 11:10:06 +02:00
zz4032
d6e8089f50
Saving new network in correct path.
2020-07-11 17:46:43 +09:00
zz4032
b521e405d3
Default network path in Linux.
2020-07-11 00:07:15 +09:00
nodchip
d7c358cf19
Fixed descriptions and sanity checks in Makefile.
2020-07-10 16:55:32 +09:00
nodchip
bc6a8d09e9
Unified the nnue-learn and nnue-learn-use-blas targets into nnue-learn.
2020-07-10 16:17:35 +09:00
nodchip
df05ecb1d5
Added halfkp_384x2-32-32.
2020-07-10 16:14:19 +09:00
nodchip
1de1eb2d0d
Refactoring: Restructured the architecture list in Makefile.
2020-07-10 16:13:21 +09:00
No name
081761d084
Add support for SSSE3-only compiles
...
For Core 2 Duo.
To compile:
make ARCH=x86-64 ssse3=yes nnue
No observable difference in speed to SSE4.1 on my machine.
2020-07-10 15:21:50 +09:00
No name
b9a32fe331
Define USE_SSE2 for any x86-64 target
...
Rather than only when popcnt=yes
x86-64 instruction set includes SSE2.
2020-07-10 14:56:33 +09:00
Joost VandeVondele
4006f2c913
Small cleanups
...
closes https://github.com/official-stockfish/Stockfish/pull/2772
No functional change
2020-07-09 22:01:06 +02:00
mstembera
bf5ce1c214
Simplify make_promotions()
...
Remove special case handling of QUIET_CHECKS in make_promotions()
STC https://tests.stockfishchess.org/tests/view/5f055dbb59f6f035328945fb
LLR: 2.98 (-2.94,2.94) {-1.50,0.50}
Total: 42808 W: 8177 L: 8054 D: 26577
Ptnml(0-2): 665, 4890, 10201, 4953, 695
LTC https://tests.stockfishchess.org/tests/view/5f06231a59f6f03532894661
LLR: 2.96 (-2.94,2.94) {-1.50,0.50}
Total: 9616 W: 1214 L: 1111 D: 7291
Ptnml(0-2): 53, 821, 2965, 908, 61
closes https://github.com/official-stockfish/Stockfish/pull/2800
Bench: 4576410
2020-07-09 21:59:32 +02:00
FauziAkram
804a29c738
Connected / blocked pawns simplification
...
There is no need to score blocked pawns at many places.
The idea originated from: Rocky
Tuning and testing by: Fauzi
Passed STC:
https://tests.stockfishchess.org/tests/view/5f04f8fd59f6f035328945d4
LLR: 2.94 (-2.94,2.94) {-1.50,0.50}
Total: 6352 W: 1299 L: 1118 D: 3935
Ptnml(0-2): 89, 695, 1469, 792, 131
Passed LTC:
https://tests.stockfishchess.org/tests/view/5f0527bd59f6f035328945e3
LLR: 2.94 (-2.94,2.94) {-1.50,0.50}
Total: 27648 W: 3517 L: 3433 D: 20698
Ptnml(0-2): 177, 2561, 8301, 2571, 214
closes https://github.com/official-stockfish/Stockfish/pull/2799
Bench: 4734746
2020-07-09 21:57:13 +02:00
Alain SAVARD
76a039027d
Clean-up en passant processing
...
the goal of this PR is to better document how we process
the ep square (if any) given position fen command, and to
output more meaningful (and consistent) debug fen on the "d"
command. The implementation follows
https://en.wikipedia.org/wiki/X-FEN#Encoding_en-passant
following x-fen, it is "valid" to record ep even if ep would put king en prise.
fixes #2784
closes https://github.com/official-stockfish/Stockfish/pull/2797
No functional change
2020-07-09 21:46:26 +02:00
tttak
a06234c639
enable convert_plain
...
learn convert_plain output_file_name xxx.txt xxx.bin
2020-07-09 09:51:00 +09:00
FireFather
df9b2a87db
Update misc.cpp
...
change name to Stockfish+NNUE
and add 3 more authors
2020-07-08 23:20:36 +09:00
FireFather
821aaf3836
Update misc.cpp
...
do not clutter console window
remove "Windows large pages not used."
only show message when/if successful
2020-07-08 23:20:36 +09:00
FireFather
76d124ed70
Update evaluate_nnue_learner.cpp
...
replace NNUE::kFileName with NNUE::fileName
2020-07-08 13:42:28 +02:00
FireFather
d1760a1f15
update evaluate_nnue.cpp
...
rename kFileName and change to std:string
2020-07-08 04:23:50 +02:00
FireFather
c59583bbf0
UCI option EvalFile
...
Replace EvalDir with EvalFile
Can now browse filesystem for net (eval\nn.bin is default)
nn.bin no longer hard-coded
2020-07-07 23:25:20 +02:00
joergoster
cd55c268cb
Bugfix.
...
Otherwise creating a new net fails.
2020-07-07 18:51:22 +09:00
joergoster
a5af8510a5
Rework loading the net.
2020-07-07 15:13:59 +09:00
Stefan Geschwentner
7225d254f9
Add a rank based bonus for blocked pawns.
...
Fix for overevaluated blocked pawns on the 5th and 6th rank.
This is a rewrite of the original idea that uses only two parameters.
Thanks to rocky640 for pointing this out.
STC:
LLR: 2.94 (-2.94,2.94) {-0.50,1.50}
Total: 50800 W: 9707 L: 9446 D: 31647
Ptnml(0-2): 831, 5851, 11822, 6018, 878
https://tests.stockfishchess.org/tests/view/5f00b4f359f6f03532894304
LTC:
LLR: 2.93 (-2.94,2.94) {0.25,1.75}
Total: 52064 W: 6477 L: 6167 D: 39420
Ptnml(0-2): 331, 4628, 15834, 4878, 361
https://tests.stockfishchess.org/tests/view/5f0115fe59f6f03532894345
closes https://github.com/official-stockfish/Stockfish/pull/2794
Bench: 4882833
2020-07-06 17:56:18 +02:00