Stefan Geschwentner and Joost VandeVondele
8ecfc3c89d
Bigger thread dependent initial window.
...
Increase the initial delta of the aspiration window by "thread id mod 8".
Passed SMP STC:
LLR: 2.96 (-2.94,2.94) <0.00,2.00>
Total: 106176 W: 27470 L: 27069 D: 51637
Ptnml(0-2): 121, 12032, 28386, 12423, 126
https://tests.stockfishchess.org/tests/view/68a178fab6fb3300203bbaec
Passed SMP LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 133076 W: 34272 L: 33772 D: 65032
Ptnml(0-2): 38, 13709, 38537, 14223, 31
https://tests.stockfishchess.org/tests/view/68a1b5d2b6fb3300203bbb71
closes https://github.com/official-stockfish/Stockfish/pull/6239
No functional change
2025-08-17 22:39:49 +02:00
87 and Joost VandeVondele
2176c9387e
Add performance warning comment for vpcompressw
...
closes https://github.com/official-stockfish/Stockfish/pull/6237
No functional change
2025-08-17 22:38:09 +02:00
Stefan Geschwentner and Joost VandeVondele
c56bd10cb5
Fix undefined behavior in stalemate trap detection.
...
An important part of it is a function which detects if we can move a king or
pawn. If this function called before quiet move generation phase the end of the
checked move list is undefined (Thanks to AliceRoselia pointing out we have
some problem because of wrong bench in a test).
This problem exists also in master but is really rarely triggered (thanks to
vondele which found one) but it seen significant more often if the capture
order score is increased.
This fix now simply assumes in this case (and other similiar cases) that a king
or pawn can move without checking any moves.
Passed non-regression STC (with default book):
LLR: 3.03 (-2.94,2.94) <-1.75,0.25>
Total: 203008 W: 52465 L: 52424 D: 98119
Ptnml(0-2): 498, 20293, 59893, 20310, 510
https://tests.stockfishchess.org/tests/view/68a06ec5fd8719b088c8dc1a
Passed non-regression STC (with stalemates book):
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 31616 W: 14418 L: 14366 D: 2832
Ptnml(0-2): 1, 189, 15375, 243, 0
https://tests.stockfishchess.org/tests/view/68a07538fd8719b088c8dc1f
closes https://github.com/official-stockfish/Stockfish/pull/6235
Bench: 2996176
2025-08-17 22:35:03 +02:00
Joost VandeVondele
4b6b13ce5a
Update sde action to 2.4, switch to 9.33.0
...
older version no longer downloadable.
closes https://github.com/official-stockfish/Stockfish/pull/6240
No functional change
2025-08-17 22:32:03 +02:00
Daniel Monroe and Joost VandeVondele
169737a9eb
Simplify dual bonuses
...
Merge dual capture/quiet bonuses into one
Passed simplification STC
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 223200 W: 57868 L: 57854 D: 107478
Ptnml(0-2): 689, 26441, 57296, 26515, 659
https://tests.stockfishchess.org/tests/view/6898d28e0049e8ccef9d6384
Passed simplification LTC
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 147270 W: 37750 L: 37659 D: 71861
Ptnml(0-2): 84, 15869, 41633, 15970, 79
https://tests.stockfishchess.org/tests/view/68990fe30049e8ccef9d643c
closes https://github.com/official-stockfish/Stockfish/pull/6226
Bench: 2996176
2025-08-16 12:12:07 +02:00
Daniel Monroe and Joost VandeVondele
c9c002450a
Simplify depth term in reductions
...
Passed simplification STC
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 317344 W: 82352 L: 82442 D: 152550
Ptnml(0-2): 999, 37395, 81907, 37439, 932
https://tests.stockfishchess.org/tests/live_elo/68976798f8a258623dda6c46
Passed simplification LTC
LLR: 2.97 (-2.94,2.94) <-1.75,0.25>
Total: 291708 W: 74733 L: 74787 D: 142188
Ptnml(0-2): 159, 31813, 81956, 31775, 151
https://tests.stockfishchess.org/tests/live_elo/689791a5f8a258623dda6d03
closes https://github.com/official-stockfish/Stockfish/pull/6225
Bench: 2436991
2025-08-16 12:06:00 +02:00
Kevin Lu and Joost VandeVondele
0db4a1bee9
Remove completedDepth condition for SE
...
Just removing the term
Passed STC:
LLR: 3.27 (-2.94,2.94) <-1.75,0.25>
Total: 179840 W: 47211 L: 47126 D: 85503
Ptnml(0-2): 567, 17929, 52879, 17942, 603
https://tests.stockfishchess.org/tests/view/688bdd88502b34dd5e7111ea
Passed LTC:
LLR: 3.26 (-2.94,2.94) <-1.75,0.25>
Total: 150708 W: 38738 L: 38637 D: 73333
Ptnml(0-2): 79, 12922, 49262, 13001, 90
https://tests.stockfishchess.org/tests/view/688ce857f17748b4d23c8026
Passed VLTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 288312 W: 74104 L: 74152 D: 140056
Ptnml(0-2): 44, 26732, 90657, 26674, 49
https://tests.stockfishchess.org/tests/view/688ec4f57d68fe4f7f130ee3
closes https://github.com/official-stockfish/Stockfish/pull/6221
functional at higher depths
Bench: 3002300
2025-08-16 12:01:19 +02:00
FauziAkram and Joost VandeVondele
d864148595
Simplify beta formula
...
Passed STC:
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 152384 W: 39907 L: 39814 D: 72663
Ptnml(0-2): 557, 17958, 39053, 18083, 541
https://tests.stockfishchess.org/tests/view/6890b66692fcad741b804a10
Passed LTC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 98688 W: 25411 L: 25270 D: 48007
Ptnml(0-2): 45, 10692, 27743, 10805, 59
https://tests.stockfishchess.org/tests/view/6896019c618946ab878347b0
closes: https://github.com/official-stockfish/Stockfish/pull/6220
bench: 3002300
2025-08-16 11:57:44 +02:00
Stefan Geschwentner and Joost VandeVondele
2e91a86354
Add log depth as term to reduction factors.
...
Replace most reduction factors with a linear term of the form X + Y * msb(depth) (using msb(depth) as simple and fast approximation for log(depth))
and tune the weights with following SPSA test: https://tests.stockfishchess.org/tests/view/689903860049e8ccef9d6415 .
Here the tuned values of X[8] and Y[8] were ignored because a simple test with this parameters alone failed badly (https://tests.stockfishchess.org/tests/view/68992b350049e8ccef9d6482 ).
Passed STC:
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 32448 W: 8651 L: 8342 D: 15455
Ptnml(0-2): 81, 3695, 8408, 3914, 126
https://tests.stockfishchess.org/tests/view/6899489b0049e8ccef9d64ad
Passed LTC:
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 73854 W: 19042 L: 18649 D: 36163
Ptnml(0-2): 37, 7908, 20659, 8271, 52
https://tests.stockfishchess.org/tests/view/689abbe7fd8719b088c8d514
closes https://github.com/official-stockfish/Stockfish/pull/6229
Bench: 3151102
2025-08-16 11:51:39 +02:00
mstembera and Joost VandeVondele
0383670cd5
Avoid using _mm512_storeu_epi16()
...
gcc 9 & 10 do not provide this function, instead use the generic _mm512_storeu_si512
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95483
https://tests.stockfishchess.org/actions?max_actions=1&action=&user=&text=&before=1755266300.455175&run_id=
closes https://github.com/official-stockfish/Stockfish/pull/6231
No functional change
2025-08-16 11:46:39 +02:00
Jost Triller and Joost VandeVondele
7a07ac0e76
Adjust probcut on staticEval
...
Reducing probcut depth more when staticEval is very good and less if staticEval is not so good compared to beta
STC: https://tests.stockfishchess.org/tests/view/68926bf6690844f940fa1350
LLR: 2.98 (-2.94,2.94) <0.00,2.00>
Total: 174400 W: 45698 L: 45174 D: 83528
Ptnml(0-2): 622, 20356, 44672, 20976, 574
LTC: https://tests.stockfishchess.org/tests/view/689651b4f8a258623dda6531
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 56010 W: 14547 L: 14191 D: 27272
Ptnml(0-2): 31, 5929, 15738, 6267, 40
This patch was generated using qwen3-235b-a22b-thinking-2507:
Prompt: https://rentry.co/bm6vriai
Thinking: https://rentry.co/34km4zf8
Final respone: https://rentry.co/rauotrvr
closes https://github.com/official-stockfish/Stockfish/pull/6219
Bench: 3629755
2025-08-09 09:08:38 +02:00
FauziAkram and Joost VandeVondele
ade8917447
Remove outdated comment
...
Remove the Elo worth, as they are now completely outdated, making them irrelevant and potentially misleading
Continuation of #5810 as these comments in "history.h" were missed.
closes https://github.com/official-stockfish/Stockfish/pull/6216
No functional change
2025-08-09 09:04:33 +02:00
mstembera and Joost VandeVondele
5464f7b114
Remove an instruction from find_nnz()
...
closes https://github.com/official-stockfish/Stockfish/pull/6212
No functional change
2025-08-09 08:54:47 +02:00
Niklas Fiekas and Joost VandeVondele
125a0cfe7b
Build x86-64-avx512icl in CI
...
closes https://github.com/official-stockfish/Stockfish/pull/6217
No functional change
2025-08-09 08:51:45 +02:00
Stockfisher69 and Joost VandeVondele
303fe9a164
Simplification: Futility pruning for captures
...
tested in final form as simplication
passed LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 113682 W: 29199 L: 29074 D: 55409
Ptnml(0-2): 68, 12359, 31859, 12490, 65
https://tests.stockfishchess.org/tests/view/688e85a17d68fe4f7f130e24
earlier test, equivalent:
passed STC:
LLR: 2.96 (-2.94,2.94) <0.00,2.00>
Total: 120224 W: 31621 L: 31176 D: 57427
Ptnml(0-2): 415, 14167, 30567, 14484, 479
https://tests.stockfishchess.org/tests/view/68888bdd7b562f5f7b732643
closes https://github.com/official-stockfish/Stockfish/pull/6209
Bench: 2661621
2025-08-09 08:49:12 +02:00
KazApps and Joost VandeVondele
b177b7394a
Separate bonus/malus parameters for quiet and capture moves
...
Parameters were tuned on 60k STC games.
Passed STC
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 16928 W: 4570 L: 4277 D: 8081
Ptnml(0-2): 57, 1905, 4270, 2152, 80
https://tests.stockfishchess.org/tests/view/688b4486502b34dd5e711122
Passed LTC
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 43602 W: 11373 L: 11041 D: 21188
Ptnml(0-2): 23, 4657, 12116, 4975, 30
https://tests.stockfishchess.org/tests/view/688c0eb5502b34dd5e71124b
Passed non-regression VLTC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 181016 W: 46335 L: 46281 D: 88400
Ptnml(0-2): 33, 18177, 54034, 18231, 33
https://tests.stockfishchess.org/tests/view/688e0a77f17748b4d23c822b
closes https://github.com/official-stockfish/Stockfish/pull/6200
bench: 3435529
2025-08-09 08:43:49 +02:00
rn5f107s2 and Joost VandeVondele
94175524b1
Only set ep square if ep capture is possible
...
for positions such as:
position fen rr6/2q2p1k/2P1b1pp/bB2P1n1/R2B2PN/p4P1P/P1Q4K/1R6 b - - 2 38 moves f7f5
position fen 8/p2r1pK1/6p1/1kp1P1P1/2p5/2P5/8/4R3 b - - 0 43 moves f7f5
position fen 4k3/4p3/2b3b1/3P1P2/4K3/8/8/8 b - - moves e7e5
ep is not possible for various reasons. Do not set the ep square and the do not change the zobrist key, as if ep were possible.
This fixes 3-fold detection, which could in rare cases be observed as a warning generated by fastchess for PVs that continued beyond an actual 3-fold.
Also fixes wrong evals for certain moves e.g. a2a1 for
position fen 4k3/1b2p2b/8/3P1P2/4K3/8/8/r7 b - - 0 1 moves e7e5 e4e3 a1a2 e3e4 a2a1 e4f3 a1a2 f3e4
fixes https://github.com/official-stockfish/Stockfish/issues/6138
originally written and tested by rn5f107s2, with small buglet as
https://tests.stockfishchess.org/tests/view/685af90843ce022d15794400
failed STC
LLR: -2.93 (-2.94,2.94) <-1.75,0.25>
Total: 130688 W: 33986 L: 34362 D: 62340
Ptnml(0-2): 414, 13292, 38302, 12928, 408
https://tests.stockfishchess.org/tests/view/688bcb35502b34dd5e7111c9
passed LTC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 99018 W: 25402 L: 25273 D: 48343
Ptnml(0-2): 54, 9097, 31089, 9204, 65
https://tests.stockfishchess.org/tests/view/688c613c502b34dd5e7112d3
https://github.com/official-stockfish/Stockfish/pull/6211
Bench: 2946135
Co-authored-by: Joost VandeVondele <Joost.VandeVondele@gmail.com >
2025-08-04 15:16:21 +02:00
Jost Triller and Joost VandeVondele
377a3a5269
Depth dependent reduction threshold when full-depth re-search
...
STC: https://tests.stockfishchess.org/tests/view/68894d577b562f5f7b73273b
LLR: 2.98 (-2.94,2.94) <0.00,2.00>
Total: 155072 W: 40651 L: 40150 D: 74271
Ptnml(0-2): 609, 18271, 39292, 18738, 626
LTC: https://tests.stockfishchess.org/tests/view/688c2705502b34dd5e71127a
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 321012 W: 82891 L: 81995 D: 156126
Ptnml(0-2): 227, 34421, 90285, 35375, 198
This commit was generated using qwen3-235b-a22b-thinking-2507:
Prompt: https://rentry.co/iqtaoht7
Reasoning/thinking: https://rentry.co/wm6t9hye
closes https://github.com/official-stockfish/Stockfish/pull/6210
Bench: 2983938
2025-08-04 15:12:55 +02:00
Shawn Xu and Joost VandeVondele
14a2e50a3d
Simplify key after
...
Passed Non-regression STC:
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 534016 W: 139438 L: 139771 D: 254807
Ptnml(0-2): 2098, 63469, 136136, 63278, 2027
https://tests.stockfishchess.org/tests/view/688ac64d502b34dd5e7110a4
Passed Non-regression LTC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 43980 W: 11346 L: 11149 D: 21485
Ptnml(0-2): 31, 4689, 12353, 4886, 31
https://tests.stockfishchess.org/tests/view/688ea8a47d68fe4f7f130eb3
closes https://github.com/official-stockfish/Stockfish/pull/6207
Bench: 2884232
2025-08-04 15:07:37 +02:00
Michael Chaly and Joost VandeVondele
5d1505d8c7
Reintroduce reduction term in LMR for cutnodes
...
This term increases reduction for cutnodes without tt move, term was simplified away recently.
Passed STC:
https://tests.stockfishchess.org/tests/view/688882007b562f5f7b73262f
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 187616 W: 49367 L: 48824 D: 89425
Ptnml(0-2): 710, 21898, 48034, 22471, 695
Passed LTC:
https://tests.stockfishchess.org/tests/view/688c71f4502b34dd5e71139a
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 140280 W: 36280 L: 35750 D: 68250
Ptnml(0-2): 79, 15175, 39121, 15667, 98
closes https://github.com/official-stockfish/Stockfish/pull/6206
Bench: 2996732
2025-08-04 14:58:59 +02:00
FauziAkram and Joost VandeVondele
8e733d68fd
Refactor: Simplify pawn structure indexing
...
Refactoring the mechanism for calculating pawn structure hash indices and make it consistent with the rest.
closes https://github.com/official-stockfish/Stockfish/pull/6205
No functional change
2025-08-04 14:56:03 +02:00
Joost VandeVondele
a6e34f128f
Fix icx profile-build
...
fixes the issue pointed out in https://github.com/official-stockfish/Stockfish/pull/6202
closes https://github.com/official-stockfish/Stockfish/pull/6203
No functional change
2025-08-04 14:53:49 +02:00
FauziAkram and Joost VandeVondele
a37b38bdf0
Add "d < newDepth" condition for doDeeperSearch
...
Add "d < newDepth" condition for doDeeperSearch
Passed STC:
LLR: 2.97 (-2.94,2.94) <0.00,2.00>
Total: 66144 W: 17512 L: 17148 D: 31484
Ptnml(0-2): 220, 7726, 16833, 8056, 237
https://tests.stockfishchess.org/tests/view/6887cce67b562f5f7b731a79
Passed LTC:
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 411240 W: 106103 L: 105023 D: 200114
Ptnml(0-2): 256, 44249, 115566, 45257, 292
https://tests.stockfishchess.org/tests/view/6887ec527b562f5f7b731c37
closes https://github.com/official-stockfish/Stockfish/pull/6204
Bench: 2917036
2025-08-02 16:25:31 +02:00
FauziAkram and Joost VandeVondele
62b958f517
Remove code that is not used anywhere
...
closes https://github.com/official-stockfish/Stockfish/pull/6201
No functional change
2025-08-02 16:21:41 +02:00
Daniel Monroe and Joost VandeVondele
cd52859bd5
Simplify improving term
...
Set improving whenever ss->staticEval >= beta
Passed simplification STC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 38016 W: 10122 L: 9900 D: 17994
Ptnml(0-2): 143, 4388, 9747, 4564, 166
https://tests.stockfishchess.org/tests/view/688803917b562f5f7b7322eb
Passed simplification LTC
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 21648 W: 5594 L: 5375 D: 10679
Ptnml(0-2): 12, 2241, 6096, 2466, 9
https://tests.stockfishchess.org/tests/view/688820397b562f5f7b73235d
closes https://github.com/official-stockfish/Stockfish/pull/6198
Bench: 3576884
2025-08-02 16:18:46 +02:00
CSTENTOR and Joost VandeVondele
57b32f3e60
Make Resetting the Aspiration Window after FailLow more aggressive
...
Sets beta=(3alpha+beta)/4 when failLow. Before it was beta=(alpha+beta)/2, even
though in theory we should be getting an upper bound from a failLow, we can’t
trust the score that caused the failLow. Therefore beta=alpha doesn’t work. I
made the buffer between the new beta to the bestValue that caused the failLow
smaller.
passed STC:
https://tests.stockfishchess.org/tests/view/688674947b562f5f7b7315b5
LLR: 2.93 (-2.94,2.94) <0.00,2.00>
Total: 119616 W: 31253 L: 30818 D: 57545
Ptnml(0-2): 313, 14028, 30724, 14397, 346
passed LTC:
https://tests.stockfishchess.org/tests/view/6887e0ad7b562f5f7b731afc
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 96978 W: 24905 L: 24466 D: 47607
Ptnml(0-2): 59, 10376, 27183, 10809, 62
closes https://github.com/official-stockfish/Stockfish/pull/6197
bench: 3085519
2025-08-02 16:12:12 +02:00
aronpetkovski and Joost VandeVondele
cef551092c
Only do IIR in minimally reduced nodes
...
Passed STC
LLR: 2.93 (-2.94,2.94) <0.00,2.00>
Total: 164256 W: 42799 L: 42299 D: 79158
Ptnml(0-2): 451, 19305, 42087, 19863, 422
https://tests.stockfishchess.org/tests/view/68868e9b7b562f5f7b731615
Passed LTC
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 279396 W: 71871 L: 71062 D: 136463
Ptnml(0-2): 126, 30117, 78404, 30924, 127
https://tests.stockfishchess.org/tests/view/6886a4977b562f5f7b731663
closes https://github.com/official-stockfish/Stockfish/pull/6196
Bench: 3490609
2025-08-02 16:02:41 +02:00
J. Oster and Joost VandeVondele
9034730a5a
Display upper/lowerbound before wdl
...
Bound info belongs directly to score info
closes https://github.com/official-stockfish/Stockfish/pull/6195
No functional change.
2025-08-02 15:54:10 +02:00
MinetaS and Joost VandeVondele
32cb78d782
Increase CI timeouts for perft
...
might fix CI failures on macOS instances
closes https://github.com/official-stockfish/Stockfish/pull/6194
No functional change
2025-08-02 15:52:24 +02:00
FauziAkram and Joost VandeVondele
fdd9c34b75
Re-adding ttHit condition, but this time in the inner block
...
Passed STC:
LLR: 2.94 (-2.94,2.94) <0.00,2.00>
Total: 150240 W: 39305 L: 38819 D: 72116
Ptnml(0-2): 536, 17541, 38494, 17999, 550
https://tests.stockfishchess.org/tests/view/6887ce577b562f5f7b731a85
Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 159120 W: 41025 L: 40461 D: 77634
Ptnml(0-2): 96, 16974, 44866, 17518, 106
https://tests.stockfishchess.org/tests/view/6887f0ba7b562f5f7b731c5d
closes https://github.com/official-stockfish/Stockfish/pull/6193
bench: 3498926
2025-08-02 15:50:17 +02:00
mstembera and Joost VandeVondele
83071917e9
Optimize find_nnz() using VBMI2
...
about a 0.7% speedup for the x86-64-avx512icl ARCH
closes https://github.com/official-stockfish/Stockfish/pull/6186
No functional change
2025-08-02 15:49:35 +02:00
aronpetkovski and Joost VandeVondele
64e8e1b247
Simplify LMR extension limit formula
...
This patch simplifies the maximum depth formula that reductions in LMR can allow.
Passed STC
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 35616 W: 9358 L: 9139 D: 17119
Ptnml(0-2): 101, 4051, 9278, 4284, 94
https://tests.stockfishchess.org/tests/view/688608cf966ed85face24882
Passed LTC
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 22284 W: 5833 L: 5613 D: 10838
Ptnml(0-2): 8, 2367, 6173, 2585, 9
https://tests.stockfishchess.org/tests/view/68860d7f966ed85face248d5
closes https://github.com/official-stockfish/Stockfish/pull/6191
Bench: 2902492
2025-07-28 20:18:55 +02:00
Daniel Monroe and Joost VandeVondele
525a5749bc
Simplify extra continuation history updates
...
Passed simplification STC
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 254464 W: 65774 L: 65793 D: 122897
Ptnml(0-2): 699, 30087, 65638, 30150, 658
https://tests.stockfishchess.org/tests/view/68863283966ed85face24a59
Passed simplification LTC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 144750 W: 37111 L: 37018 D: 70621
Ptnml(0-2): 79, 15676, 40764, 15785, 71
https://tests.stockfishchess.org/tests/view/6886655f7b562f5f7b731359
closes https://github.com/official-stockfish/Stockfish/pull/6189
Bench: 3071078
2025-07-28 20:13:15 +02:00
Styx and Joost VandeVondele
ab83d320b8
Simplify NMP condition
...
As this is tried only for cutNode, and all children of cutNodes will be nonCutNodes, the guard condition is redundant.
Simplification just removes the unnecessary condition (always true).
closes https://github.com/official-stockfish/Stockfish/pull/6187
No functional change
2025-07-28 20:11:40 +02:00
87 and Joost VandeVondele
1d8f118c3e
Remove unnecessary deque allocation in perft
...
closes https://github.com/official-stockfish/Stockfish/pull/6182
No functional change.
2025-07-28 20:05:26 +02:00
FauziAkram and Joost VandeVondele
a9b7638e96
Simplify newDepth modification formulas
...
Passed STC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 21856 W: 5709 L: 5471 D: 10676
Ptnml(0-2): 77, 2466, 5589, 2734, 62
https://tests.stockfishchess.org/tests/view/68862ea4966ed85face24a27
Passed LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 108828 W: 27893 L: 27763 D: 53172
Ptnml(0-2): 59, 11860, 30435, 12012, 48
https://tests.stockfishchess.org/tests/view/68863046966ed85face24a3b
closes https://github.com/official-stockfish/Stockfish/pull/6181
Bench: 3069051
2025-07-28 20:03:05 +02:00
Nonlinear2 and Joost VandeVondele
2e2d2778fc
increase futility value when capturing last moved piece
...
Passed STC:
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 204320 W: 53059 L: 52500 D: 98761
Ptnml(0-2): 551, 23874, 52778, 24379, 578
https://tests.stockfishchess.org/tests/view/688618ae966ed85face24976
Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 138582 W: 35748 L: 35225 D: 67609
Ptnml(0-2): 62, 14874, 38900, 15389, 66
https://tests.stockfishchess.org/tests/view/68862717966ed85face249f2
closes https://github.com/official-stockfish/Stockfish/pull/6190
Bench: 2894413
2025-07-28 19:52:40 +02:00
FauziAkram and Joost VandeVondele
9045fdb227
Add depth condition
...
Passed STC:
LLR: 2.94 (-2.94,2.94) <0.00,2.00>
Total: 103360 W: 26941 L: 26530 D: 49889
Ptnml(0-2): 291, 11964, 26770, 12353, 302
https://tests.stockfishchess.org/tests/view/68863547966ed85face24a6f
Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 115128 W: 29734 L: 29258 D: 56136
Ptnml(0-2): 48, 12406, 32182, 12878, 50
https://tests.stockfishchess.org/tests/view/68864f867b562f5f7b7312f2
closes https://github.com/official-stockfish/Stockfish/pull/6184
Bench: 2972498
2025-07-28 19:49:05 +02:00
FauziAkram and Joost VandeVondele
4fcfb0b4b7
Tweak the logic for setting the improving flag
...
Tweak the logic for setting the improving flag when the static evaluation is significantly higher than alpha.
Passed STC:
LLR: 2.93 (-2.94,2.94) <0.00,2.00>
Total: 92320 W: 24057 L: 23664 D: 44599
Ptnml(0-2): 247, 10689, 23893, 11086, 245
https://tests.stockfishchess.org/tests/view/68860aba966ed85face248a1
Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 281292 W: 72496 L: 71683 D: 137113
Ptnml(0-2): 135, 30289, 78995, 31082, 145
https://tests.stockfishchess.org/tests/view/6886168c966ed85face24962
closes https://github.com/official-stockfish/Stockfish/pull/6180
Bench: 3200439
2025-07-28 19:45:13 +02:00
pb00067 and Joost VandeVondele
402602a70d
Simplify static evaluation difference to move ordering logic
...
Passed STC simplification bounds
https://tests.stockfishchess.org/tests/view/686fcb091451bd6fb83082bc
LLR: 2.92 (-2.94,2.94) <-1.75,0.25>
Total: 762816 W: 196717 L: 197295 D: 368804
Ptnml(0-2): 2052, 90457, 196853, 90109, 1937
Passed LTC simplification bounds
https://tests.stockfishchess.org/tests/view/68808d316e17e7fa3939b35d
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 44736 W: 11499 L: 11303 D: 21934
Ptnml(0-2): 24, 4766, 12586, 4974, 18
closes https://github.com/official-stockfish/Stockfish/pull/6176
bench: 2684407
2025-07-28 19:40:15 +02:00
Guenther Demetz and Joost VandeVondele
b6082ba750
Simplify search functions according DRY principle
...
Passed STC non-regression bounds
https://tests.stockfishchess.org/tests/view/6870db4bfa93cf16d3bb286a
LLR: 3.00 (-2.94,2.94) <-1.75,0.25>
Total: 182016 W: 46735 L: 46673 D: 88608
Ptnml(0-2): 368, 19895, 50465, 19867, 413
closes https://github.com/official-stockfish/Stockfish/pull/6161
no functional change
2025-07-28 19:35:28 +02:00
Muzhen Gaming and Joost VandeVondele
90c83c381f
VVLTC Search Tune
...
alues were tuned with 125k VVLTC games.
Passed VVLTC 1st sprt:
https://tests.stockfishchess.org/tests/view/68865feb7b562f5f7b731341
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 39640 W: 10380 L: 10109 D: 19151
Ptnml(0-2): 5, 3556, 12424, 3833, 2
Passed VVLTC 2nd sprt:
https://tests.stockfishchess.org/tests/view/68864dfa7b562f5f7b7312ee
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 25972 W: 6807 L: 6537 D: 12628
Ptnml(0-2): 0, 2294, 8132, 2556, 4
closes https://github.com/official-stockfish/Stockfish/pull/6188
Bench: 3143696
2025-07-28 19:33:00 +02:00
aronpetkovski and Joost VandeVondele
a516b517d3
Simplify eval >= beta condition from NMP
...
It seems that now only checking if static eval is above beta by some margin is all that's necessary.
Passed Non-Regression STC
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 227264 W: 58430 L: 58421 D: 110413
Ptnml(0-2): 532, 26559, 59454, 26542, 545
https://tests.stockfishchess.org/tests/view/68763a77432ca24f6388c766
Passed Non-Regression LTC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 72048 W: 18622 L: 18455 D: 34971
Ptnml(0-2): 26, 7775, 20272, 7908, 43
https://tests.stockfishchess.org/tests/view/687c9f2b6e17e7fa3939b0c5
closes https://github.com/official-stockfish/Stockfish/pull/6175
Bench: 2759840
2025-07-24 10:38:13 +02:00
Daniel Monroe and Joost VandeVondele
92514fd3a2
Simplify away a term in see pruning
...
This change only sets the margin to 0 when depth <= 2 and margin <= 42 which
never has a difference, thus non-functional
Passed non-regression STC
LLR: 3.51 (-2.94,2.94) <-1.75,0.25>
Total: 306976 W: 78935 L: 78961 D: 149080
Ptnml(0-2): 630, 34097, 84067, 34057, 637
https://tests.stockfishchess.org/tests/view/68708015fa93cf16d3bb2782
closes https://github.com/official-stockfish/Stockfish/pull/6170
No functional change
2025-07-24 10:32:41 +02:00
Disservin and Joost VandeVondele
e88ccfd835
Prevent accidential misuse of TUNE()
...
Writing a TUNE expression like
int smallNetThreshold = 962;
TUNE(smallNetThreshold, 850, 1050);
is wrong and can lead to a weird binary. It should thus fail to even compile,
with the proper intellisense you'll also see the error directly in your editor.
A cheap way to prevent this is to disallow any fundamental type in the parameter list.
closes https://github.com/official-stockfish/Stockfish/pull/6164
No functional change
2025-07-24 10:28:17 +02:00
FauziAkram and Joost VandeVondele
bdc393d3a2
Correct comment
...
closes https://github.com/official-stockfish/Stockfish/pull/6159
No functional change
2025-07-24 10:26:15 +02:00
Daniel Samek and Joost VandeVondele
2c9a1871ae
Add offsets to history updates.
...
All parameters were tuned on 60k STC games (https://tests.stockfishchess.org/tests/view/6867ef49fe0f2fe354c0c735 ).
Passed STC:
LLR: 2.98 (-2.94,2.94) <0.00,2.00>
Total: 60576 W: 15794 L: 15444 D: 29338
Ptnml(0-2): 141, 7003, 15642, 7369, 133
https://tests.stockfishchess.org/tests/view/686d5af11451bd6fb830772a
Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 58722 W: 15159 L: 14799 D: 28764
Ptnml(0-2): 19, 6259, 16455, 6599, 29
https://tests.stockfishchess.org/tests/view/686f9fd51451bd6fb83081c9
closes https://github.com/official-stockfish/Stockfish/pull/6158
bench: 2706299
2025-07-24 10:24:08 +02:00
FauziAkram and Joost VandeVondele
793110ca19
Remove !ttData.move condition from cutNode reduction
...
Passed STC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 118080 W: 30427 L: 30298 D: 57355
Ptnml(0-2): 290, 13880, 30561, 14029, 280
https://tests.stockfishchess.org/tests/view/6853f9bc038630d25f468670
Passed LTC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 232272 W: 59187 L: 59182 D: 113903
Ptnml(0-2): 111, 25430, 65014, 25505, 76
https://tests.stockfishchess.org/tests/view/68585c40a596a06817bb922e
closes https://github.com/official-stockfish/Stockfish/pull/6157
bench: 2227361
2025-07-24 10:19:10 +02:00
Shawn Xu and Joost VandeVondele
e2aa125570
Consistent syntax for class members
...
Currently, search.cpp uses three different syntax when accessing class member variables
* thisThread object references. This was a remnant from when pos.this_thread() was necessary for thread-local variable access
* this object references
* implicit member variable access
This PR aims to deprecate thisThread and standardize this syntax to implicit variable access, which is consistent with the rest of SF's codebase.
closes https://github.com/official-stockfish/Stockfish/pull/6154
no functional change
2025-07-24 10:13:24 +02:00
87 and Joost VandeVondele
8c2d21f91a
Speedup movegen with VBMI2
...
Passed STC
LLR: 2.96 (-2.94,2.94) <0.00,2.00>
Total: 166720 W: 43191 L: 42701 D: 80828
Ptnml(0-2): 348, 18567, 45069, 18999, 377
https://tests.stockfishchess.org/tests/view/686ae98dfe0f2fe354c0c867
Refactor movegen to emit to a vector with 16-bit elements, which enables a
speedup with AVX512-VBMI2 when writing moves to the move list.
Very crude timing measurements of perft via timing ./stockfish "go perft 7"
demonstrates approximately 17% perft speedup:
Summary
./Stockfish-dev/src/stockfish 'go perft 7' ran
1.17 ± 0.04 times faster than ./Stockfish-base/src/stockfish 'go perft 7'
Estimated overall nps increase of 0.4% via speedtest: 33605229 -> 33749825
(many thanks JonathanHallstrom).
The corresponding arch is avx512icl as it is a good baseline for consumer
avx-512 feature set support; Intel Ice Lake was the first consumer AVX-512 CPU
and it is a decent subset of what AMD Zen 4 supports.
closes https://github.com/official-stockfish/Stockfish/pull/6153
No functional change
2025-07-24 10:08:35 +02:00