Commit Graph
6859 Commits
Author SHA1 Message Date
Shawn XuandJoost VandeVondele 5895f47dab Further simplify low ply history in evasions
Passed Non-regression STC (vs #6308):
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 174208 W: 45414 L: 45343 D: 83451
Ptnml(0-2): 633, 20324, 45095, 20443, 609
https://tests.stockfishchess.org/tests/view/68c24be359efc3c96b611487

Passed Non-regression LTC (vs #6308):
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 110070 W: 28099 L: 27969 D: 54002
Ptnml(0-2): 56, 11919, 30962, 12035, 63
https://tests.stockfishchess.org/tests/view/68c4efa559efc3c96b611dfc

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

Bench: 2151873
2025-10-05 09:18:16 +02:00
Shawn XuandJoost VandeVondele 3073d82ccf Simplify use of low-ply history in evasions
Passed Non-regression STC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 65024 W: 16991 L: 16804 D: 31229
Ptnml(0-2): 182, 7423, 17119, 7602, 186
https://tests.stockfishchess.org/tests/view/68c23f5459efc3c96b6113df

Passed Non-regression LTC:
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 207312 W: 53126 L: 53095 D: 101091
Ptnml(0-2): 126, 21986, 59389, 22041, 114
https://tests.stockfishchess.org/tests/view/68c241e359efc3c96b6113ef

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

Bench: 2515619
2025-09-28 21:21:57 +02:00
Shawn XuandJoost VandeVondele c62e71e78f Simplify a separate term in low ply history bonus formula
Passed Non-regression STC:
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 211200 W: 54887 L: 54860 D: 101453
Ptnml(0-2): 719, 24894, 54296, 25023, 668
https://tests.stockfishchess.org/tests/view/68c21e7f59efc3c96b6112c8

Passed Non-regression LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 217842 W: 55587 L: 55568 D: 106687
Ptnml(0-2): 130, 23651, 61313, 23724, 103
https://tests.stockfishchess.org/tests/view/68c230ec59efc3c96b61135a

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

Bench: 2070860
2025-09-28 21:19:22 +02:00
FauziAkramandJoost VandeVondele 40aeb5a411 Simplify away conthist 0
While at it, I also added the scaler note to the Lmrdepth/history formula.

Passed STC:
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 25376 W: 6660 L: 6423 D: 12293
Ptnml(0-2): 77, 2947, 6403, 3184, 77
https://tests.stockfishchess.org/tests/view/68c1ccf759efc3c96b610deb

Passed LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 208464 W: 53371 L: 53342 D: 101751
Ptnml(0-2): 110, 22776, 58426, 22815, 105
https://tests.stockfishchess.org/tests/view/68c1d04b59efc3c96b610e13

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

Bench: 2029296
2025-09-28 21:14:28 +02:00
Shawn XuandJoost VandeVondele 415a1ad426 Simplify Probcut Clamp Further
Passed Non-regression STC:
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 157984 W: 41116 L: 41030 D: 75838
Ptnml(0-2): 568, 18570, 40601, 18714, 539
https://tests.stockfishchess.org/tests/view/68b750518f94a4e5a7fe76cd

Passed Non-regression LTC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 335232 W: 85443 L: 85543 D: 164246
Ptnml(0-2): 177, 36616, 94137, 36502, 184
https://tests.stockfishchess.org/tests/view/68bc767259efc3c96b61076b

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

Bench: 2213844
2025-09-28 21:12:01 +02:00
7a36c0e95f Remove quiet move streak
Passed Non-regression STC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 67712 W: 17744 L: 17555 D: 32413
Ptnml(0-2): 204, 8030, 17274, 8069, 279
https://tests.stockfishchess.org/tests/view/68b784628f94a4e5a7fe7706

Passed Non-regression LTC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 196050 W: 50270 L: 50228 D: 95552
Ptnml(0-2): 122, 21465, 54813, 21499, 126
https://tests.stockfishchess.org/tests/view/68ba119d8f94a4e5a7fe7941

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

Bench: 2238789

Co-authored-by: Daniel Monroe <github.com@danielmonroe.net>
2025-09-28 21:08:58 +02:00
Timothy HerchenandJoost VandeVondele 9b164d9520 Shave some instructions off a hot loop in affine transform
On x86, GCC generates highly suboptimal code for this loop in its old form,
about 2x as many instructions as necessary. This decreases throughput
especially in an SMT setting. Clang does a better job but this change still has
some improvement. Note that the std::ptrdiff_t type is not optional; using an
unsigned type brings back the bad assembly. (Not sure why, but it seems
reliable on all the GCC versions I tested.)

passed STC:
LLR: 2.93 (-2.94,2.94) <0.00,2.00>
Total: 44672 W: 11841 L: 11527 D: 21304
Ptnml(0-2): 165, 4625, 12415, 4993, 138
https://tests.stockfishchess.org/tests/view/68d8111efa806e2e8393b10e

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

No functional change
2025-09-28 21:04:29 +02:00
Michael ChalyandJoost VandeVondele 4f4f78f86e Extend nodes pre qsearch only with deep enough tt entries
Modification of current pre qsearch extensions - allowing it only for deep enough tt entries.

Passed STC:
https://tests.stockfishchess.org/tests/view/68c954d302c43c969fe7eea5
LLR: 2.93 (-2.94,2.94) <0.00,2.00>
Total: 35872 W: 9548 L: 9236 D: 17088
Ptnml(0-2): 101, 4075, 9295, 4341, 124

Passed LTC:
https://tests.stockfishchess.org/tests/view/68ca4e4f02c43c969fe7ef5f
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 107754 W: 27784 L: 27324 D: 52646
Ptnml(0-2): 47, 11528, 30300, 11922, 80

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

bench: 2462792
2025-09-28 20:56:36 +02:00
Nonlinear2andJoost VandeVondele 6fa42d9724 Simplify RFP return value
Passed non-regression STC:
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 220800 W: 57351 L: 57332 D: 106117
Ptnml(0-2): 726, 26200, 56548, 26181, 745
https://tests.stockfishchess.org/tests/view/68b1db6e6217b8721dca9c67

Passed gainer LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 257820 W: 66286 L: 65523 D: 126011
Ptnml(0-2): 118, 27586, 72779, 28269, 158
https://tests.stockfishchess.org/tests/view/68c1d40859efc3c96b610e3d

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

bench: 2364596
2025-09-28 20:53:47 +02:00
FauziAkramandJoost VandeVondele bbad001a49 Double PawnHistory size and update formula
Doubling PAWN_HISTORY_SIZE to 1024. So with that, we can apply a stronger learning signal.
The bonus/malus multipliers in the update_quiet_histories function have been increased accordingly.

Passed STC:
LLR: 2.97 (-2.94,2.94) <0.00,2.00>
Total: 111008 W: 29136 L: 28708 D: 53164
Ptnml(0-2): 367, 12870, 28609, 13284, 374
https://tests.stockfishchess.org/tests/view/68c201d659efc3c96b61117e

Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 117210 W: 30142 L: 29664 D: 57404
Ptnml(0-2): 49, 12532, 32970, 13000, 54
https://tests.stockfishchess.org/tests/view/68c20a6259efc3c96b6111ef

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

Bench: 2788334
2025-09-28 20:51:34 +02:00
Syine MinetaandJoost VandeVondele a47a1c1804 Penalty to TT move history on MultiCut
If a reduced search fails high with the TT move excluded, we know that
there are multiple moves that can produce cutoffs. Applying a  penalty
to the TT move history reduces extensions for TT moves so that it may
spend a bit more time exploring other moves.

Passed STC:
LLR: 2.93 (-2.94,2.94) <0.00,2.00>
Total: 263680 W: 68965 L: 68313 D: 126402
Ptnml(0-2): 855, 31090, 67336, 31666, 893
https://tests.stockfishchess.org/tests/view/68c1f65a59efc3c96b6110e5

Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 61008 W: 15713 L: 15350 D: 29945
Ptnml(0-2): 27, 6428, 17235, 6783, 31
https://tests.stockfishchess.org/tests/view/68c1fc5359efc3c96b611141

Passed non-regression VLTC (60+0.6, Threads=8):
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 50340 W: 13003 L: 12830 D: 24507
Ptnml(0-2): 3, 4570, 15849, 4747, 1
https://tests.stockfishchess.org/tests/view/68c2056559efc3c96b6111c3

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

Bench: 2342975
2025-09-28 20:49:24 +02:00
Sebastian BuchwaldandJoost VandeVondele a82e2a4cb6 Replace deprecated macOS 13 runner image
The macOS 13 runner image will be retired by December 4th, 2025.

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

No functional change
2025-09-28 20:46:42 +02:00
Robert Nurnberg @ elitebookandJoost VandeVondele f922fb5d55 add multithreaded matetrack runs to CI
Add runs with --threads 4 to our matetrack CI. These won't be deterministic, of
course. But they may catch early some multithreading bugs in our mate
reporting.

Motivated by #6293 and #6296.

https://github.com/official-stockfish/Stockfish/pull/6297

No functional change.
2025-09-28 20:45:30 +02:00
DisservinandJoost VandeVondele 1a3a9c9005 simplify upload_binaries ci
Previously the upload step used the os of the artifact to create the upload and
used an extra msys2 step. This is in fact not needed and we can do all required
changes on ubuntu instead.

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

No functional change
2025-09-28 20:43:54 +02:00
Syine MinetaandJoost VandeVondele fc54d87301 Revert "Adjustment of the aspiration window after fail high/low."
This reverts commit bfc7000597.

Fixes https://github.com/official-stockfish/Stockfish/issues/6296

After this commit a bug has been reported when the position is close to
mate or being mated. Since no workarounds have been suggested yet, it
is best to revert this commit until a better solution is found.

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

Bench: 2493363
2025-09-13 08:18:52 +02:00
Stefan GeschwentnerandJoost VandeVondele bfc7000597 Adjustment of the aspiration window after fail high/low.
For the new bound in the opposite direction of the fail, use a weighted average of alpha, beta and best value +- delta. In the case of a fail high, different average weights are used depending on whether or not there was a best move change during the last search.

The weights are determined from the following two consecutive LTC tunings.

First tuning: https://tests.stockfishchess.org/tests/view/68ab727975da51a345a5ac2e
Second tuning: https://tests.stockfishchess.org/tests/view/68aba3fe75da51a345a5ad52

Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.00,2.00>
Total: 39504 W: 10243 L: 9947 D: 19314
Ptnml(0-2): 25, 4182, 11041, 4480, 24
https://tests.stockfishchess.org/tests/view/68acbb6d6217b8721dca95f8

Passed VLTC:
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 91196 W: 23574 L: 23167 D: 44455
Ptnml(0-2): 13, 8943, 27276, 9356, 10
https://tests.stockfishchess.org/tests/view/68af64786217b8721dca993d

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

Bench: 2785713
2025-09-06 07:57:57 +02:00
Shawn XuandJoost VandeVondele d5f152b5df Reintroduce #6259
Reintroduces af181d9, which no longer regresses on matetrack after #6286

Using ./stockfish on matetrack.epd with --nodes 1000000
Engine ID:     Stockfish dev-20250902-adfddd2c
Total FENs:    6554
Found mates:   3490
Best mates:    2429

Passed Non-regression LTC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 37608 W: 9726 L: 9523 D: 18359
Ptnml(0-2): 16, 4001, 10578, 4182, 27
https://tests.stockfishchess.org/tests/view/68b886778f94a4e5a7fe77d9

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

Bench: 2493363
2025-09-06 07:55:14 +02:00
Shawn XuandJoost VandeVondele adfddd2c98 Add scaling note to STC/LTC tunes
It has been repeatedly shown that such tunes are suspectible to become
anti-scaling. Below are some recent examples:

https://github.com/official-stockfish/Stockfish/commit/2e91a8635468e40c89a2303ce50384864d088611
https://github.com/official-stockfish/Stockfish/commit/d11f49b790429c236a1a4169f0d8052635fc03dc

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

Revert VVLTC with STC bound:
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 53802 W: 14030 L: 13740 D: 26032
Ptnml(0-2): 5, 4924, 16754, 5212, 6
https://tests.stockfishchess.org/tests/view/68a9a9f575da51a345a5a675

Revert VVLTC with LTC bound:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 53658 W: 14022 L: 13699 D: 25937
Ptnml(0-2): 3, 4894, 16712, 5217, 3
https://tests.stockfishchess.org/tests/view/68a8d2b2b6fb3300203bca77

https://tests.stockfishchess.org/tests/view/688cf38bf17748b4d23c8057
https://tests.stockfishchess.org/tests/view/6890bc7792fcad741b804a19

Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 74928 W: 19466 L: 19071 D: 36391
Ptnml(0-2): 37, 8048, 20901, 8439, 39

Failed Non-regression VLTC:
LLR: -2.94 (-2.94,2.94) <-1.75,0.25>
Total: 57704 W: 14643 L: 14928 D: 28133
Ptnml(0-2): 5, 5925, 17280, 5634, 8
https://tests.stockfishchess.org/tests/view/6890bc7792fcad741b804a19

(Note that an STC-tuned version passed non-regression, but was shortly
simplified)

https://github.com/official-stockfish/Stockfish/pull/6040

Passed STC:
LLR: 2.93 (-2.94,2.94) <0.00,2.00>
Total: 27776 W: 7352 L: 7054 D: 13370
Ptnml(0-2): 68, 3126, 7221, 3386, 87
https://tests.stockfishchess.org/tests/view/680ec0f83629b02d74b1605b

Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 161304 W: 41432 L: 40864 D: 79008
Ptnml(0-2): 61, 17305, 45357, 17863, 66
https://tests.stockfishchess.org/tests/view/680ec7f93629b02d74b16084

Failed Non-regression VVLTC:
LLR: -2.94 (-2.94,2.94) <-1.75,0.25>
Total: 313466 W: 80573 L: 81089 D: 151804
Ptnml(0-2): 38, 29689, 97782, 29199, 25
https://tests.stockfishchess.org/tests/view/6810d0533629b02d74b16756

https://github.com/official-stockfish/Stockfish/pull/5907
https://github.com/official-stockfish/Stockfish/pull/5887

Passed LTC with STC bounds:
https://tests.stockfishchess.org/tests/view/67b115dd6c6b9e172ad1592f
LLR: 2.94 (-2.94,2.94) <0.00,2.00>
Total: 75756 W: 19393 L: 19044 D: 37319
Ptnml(0-2): 60, 8251, 20913, 8588, 66

Passed LTC with LTC bounds:
https://tests.stockfishchess.org/tests/view/67af5f5d6c6b9e172ad15765
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 108126 W: 27880 L: 27412 D: 52834
Ptnml(0-2): 85, 11786, 29866, 12228, 98

Revert VVLTC w/ STC bounds:
LLR: 2.94 (-2.94,2.94) <0.00,2.00>
Total: 56342 W: 14536 L: 14246 D: 27560
Ptnml(0-2): 7, 5061, 17741, 5359, 3
https://tests.stockfishchess.org/tests/view/67be4f8ad8d5c2c657c52d10

Revert VVLTC w/ LTC bounds:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 66562 W: 17364 L: 17016 D: 32182
Ptnml(0-2): 3, 6145, 20637, 6493, 3
https://tests.stockfishchess.org/tests/view/67bcd25ff6b602bd7222ea40

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

no functional change
2025-09-02 20:42:03 +02:00
Shawn XuandJoost VandeVondele f2da0ccf3f Simplify SMP Reduction
Passed Non-regression SMP STC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 232784 W: 59845 L: 59841 D: 113098
Ptnml(0-2): 289, 26459, 62934, 26379, 331
https://tests.stockfishchess.org/tests/view/68ab96bf75da51a345a5acd6

Passed Non-regression SMP LTC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 374270 W: 95978 L: 96113 D: 182179
Ptnml(0-2): 118, 38575, 109888, 38432, 122
https://tests.stockfishchess.org/tests/view/68abcf1c75da51a345a5adb6

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

Bench: 2667107
2025-09-02 20:41:08 +02:00
Shawn XuandJoost VandeVondele 75ac6c7a06 simplify stalemate further
Non-regression STC:
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 155200 W: 40650 L: 40562 D: 73988
Ptnml(0-2): 533, 17588, 41258, 17700, 521
https://tests.stockfishchess.org/tests/view/68abe11375da51a345a5adec

Non-regression LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 82824 W: 21442 L: 21287 D: 40095
Ptnml(0-2): 51, 8738, 23675, 8901, 47
https://tests.stockfishchess.org/tests/view/68b205606217b8721dca9c8e

10k Stalemate:
Elo: 1.46 ± 1.2 (95%) LOS: 99.0%
Total: 10000 W: 4640 L: 4598 D: 762
Ptnml(0-2): 0, 140, 4678, 182, 0
https://tests.stockfishchess.org/tests/view/68b2059b6217b8721dca9c90

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

Bench: 2431727
2025-09-02 20:39:02 +02:00
Daniel MonroeandJoost VandeVondele da63060ea3 Simplify sign term in quiet histories
Simplify sign term in quiet histories

Passed simplification STC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 497824 W: 129130 L: 129418 D: 239276
Ptnml(0-2): 1546, 59040, 128008, 58792, 1526
https://tests.stockfishchess.org/tests/view/68a2a9c1b6fb3300203bc3ed

Passed simplification LTC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 70830 W: 18185 L: 18016 D: 34629
Ptnml(0-2): 36, 7658, 19861, 7821, 39
https://tests.stockfishchess.org/tests/view/68af36c96217b8721dca98d9

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

Bench: 2393762
2025-09-02 20:37:04 +02:00
Joost VandeVondeleandxu-shawn 3833583862 limit dynamic reduction.
fixes https://github.com/official-stockfish/Stockfish/issues/6280

prevents probcut from extending depth as analyzed here:
https://github.com/official-stockfish/Stockfish/pull/6254#issuecomment-3239144280

passed STC:
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 86688 W: 22591 L: 22426 D: 41671
Ptnml(0-2): 305, 10125, 22311, 10306, 297
https://tests.stockfishchess.org/tests/view/68b418ab467ff96994ae4cd5

passed LTC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 82914 W: 21287 L: 21130 D: 40497
Ptnml(0-2): 39, 8959, 23305, 9114, 40
https://tests.stockfishchess.org/tests/view/68b47ffa78ed7a752a9e8f36

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

Bench: 2787731

Co-Authored-By: xu-shawn <50402888+xu-shawn@users.noreply.github.com>
2025-09-02 20:34:47 +02:00
Arseniy SurkovandJoost VandeVondele 731ad9bbc3 Simplify adjust_key50 template
Remove the AfterMove template from the adjust_key50 function, which is only ever called with false.

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

No functional change
2025-08-30 15:17:57 +02:00
Sebastian BuchwaldandJoost VandeVondele 7a3483fa9e Remove superfluous cast
closes https://github.com/official-stockfish/Stockfish/pull/6277

No functional change
2025-08-30 15:14:51 +02:00
Torsten HellwigandJoost VandeVondele 6a6dadb5a6 Remove buggy and unused function
The function does not fulfill its purpose and is not used anywhere.
See https://discord.com/channels/435943710472011776/1101022188313772083/1409801409855094874

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

no functional change
2025-08-30 15:13:40 +02:00
Shawn XuandJoost VandeVondele 3f18352396 Further Simplify Stalemate Detection
Passed Non-regression STC:
LLR: 2.98 (-2.94,2.94) <-1.75,0.25>
Total: 191520 W: 49633 L: 49582 D: 92305
Ptnml(0-2): 557, 20676, 53260, 20693, 574
https://tests.stockfishchess.org/tests/view/68ab570075da51a345a5abe1

Passed Non-regression LTC:
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 212934 W: 54643 L: 54618 D: 103673
Ptnml(0-2): 117, 22417, 61364, 22462, 107
https://tests.stockfishchess.org/tests/view/68ab84e975da51a345a5ac6b

10k Stalemate:
Elo: 0.35 ± 1.2 (95%) LOS: 71.6%
Total: 10000 W: 4602 L: 4592 D: 806
Ptnml(0-2): 0, 148, 4694, 158, 0
nElo: 1.99 ± 6.8 (95%) PairsRatio: 1.07
https://tests.stockfishchess.org/tests/view/68abeb8175da51a345a5af82

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

Bench: 2420973
2025-08-30 15:12:06 +02:00
7d213afd37 Non-functional simplifications
closes https://github.com/official-stockfish/Stockfish/pull/6267

No functional change

Co-authored-by: Daniel Monroe <github.com@danielmonroe.net>
2025-08-30 15:09:47 +02:00
Shawn XuandJoost VandeVondele a289ee389a Simplify Capture Futility Pruning
Passed Non-regression STC:
LLR: 2.97 (-2.94,2.94) <-1.75,0.25>
Total: 187904 W: 48639 L: 48583 D: 90682
Ptnml(0-2): 560, 22150, 48502, 22154, 586
https://tests.stockfishchess.org/tests/view/68aad56075da51a345a5a9e3

Passed Non-regression LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 94302 W: 24246 L: 24101 D: 45955
Ptnml(0-2): 44, 10274, 26371, 10417, 45
https://tests.stockfishchess.org/tests/view/68ab541975da51a345a5aacf

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

Bench: 2376717
2025-08-30 15:09:00 +02:00
Robert Nurnberg @ elitebookandJoost VandeVondele 222df615c1 revert #6259
The recent commit af181d9 was merged as a simplification, but unfortunately hurts mate finding efficiency.

https://github.com/vondele/matetrack/blob/69f5c5e8627c163a6a8480b869ee09bc44dc44d4/matetrack1000000.csv#L4075-L4076

So this PR proposes to revert it, while adding a comment in the code for future reference.

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

Bench: 2566711
2025-08-30 15:06:57 +02:00
Nonlinear2andJoost VandeVondele 75f07da912 Avoid high rule50 count zeroing cutoffs
If the depth is low enough, don't TT cut if the rule50 count is high and the TT move is zeroing.

Passed STC:
https://tests.stockfishchess.org/tests/view/68a8fdd8b6fb3300203bcb92
LLR: 3.05 (-2.94,2.94) <0.00,2.00>
Total: 110304 W: 28805 L: 28402 D: 53097
Ptnml(0-2): 275, 11174, 31875, 11529, 299

Passed LTC:
https://tests.stockfishchess.org/tests/view/68aa200f75da51a345a5a809
LLR: 3.00 (-2.94,2.94) <0.50,2.50>
Total: 187956 W: 48489 L: 47928 D: 91539
Ptnml(0-2): 59, 16118, 61075, 16655, 71

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

bench: 2641840
2025-08-30 15:05:11 +02:00
Akshat SinhaandJoost VandeVondele 69de394439 fix ppc altivec check & loongarch64-lsx typo
closes https://github.com/official-stockfish/Stockfish/pull/6276

No functional change
2025-08-30 15:03:09 +02:00
Sebastian BuchwaldandJoost VandeVondele cb7232a818 Use integer type for UCI spin values
In particular, parse spin values as integers to avoid rounding errors.

Fixes https://github.com/official-stockfish/Stockfish/issues/6263
closes https://github.com/official-stockfish/Stockfish/pull/6264

No functional change
2025-08-30 15:02:05 +02:00
Shawn XuandJoost VandeVondele 678d503d8f Simplify LMR Extensions
Passed Non-regression STC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 236896 W: 61683 L: 61683 D: 113530
Ptnml(0-2): 730, 28057, 60901, 28003, 757
https://tests.stockfishchess.org/tests/view/68a9c20475da51a345a5a6a0

Passed Non-regression LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 73644 W: 18936 L: 18770 D: 35938
Ptnml(0-2): 33, 7951, 20685, 8123, 30
https://tests.stockfishchess.org/tests/view/68aa95c575da51a345a5a88a

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

Bench:  2693376
2025-08-24 20:10:43 +02:00
Stefan GeschwentnerandJoost VandeVondele 39c077f15a Less reduction for later threads.
Give "(thread id mod 8) * 64" less reductions (up to nearly a half ply).

Passed SMP STC:
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 413176 W: 106496 L: 105666 D: 201014
Ptnml(0-2): 504, 46732, 111266, 47602, 484
https://tests.stockfishchess.org/tests/view/68a24aeeb6fb3300203bbdc4

Passed SMP LTC:
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 60420 W: 15622 L: 15268 D: 29530
Ptnml(0-2): 11, 6106, 17632, 6440, 21
https://tests.stockfishchess.org/tests/view/68a2c2ffb6fb3300203bc516

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

No functional change
2025-08-24 20:07:50 +02:00
FauziAkramandJoost VandeVondele c99eb8ef32 Remove cap from a bonusScale formula
Passed STC:
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 127264 W: 33159 L: 33042 D: 61063
Ptnml(0-2): 336, 14509, 33866, 14544, 377
https://tests.stockfishchess.org/tests/view/68a63fccb6fb3300203bc818

Passed LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 469512 W: 120094 L: 120331 D: 229087
Ptnml(0-2): 238, 51317, 131885, 51076, 240
https://tests.stockfishchess.org/tests/view/68a8d867b6fb3300203bcab5

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

Bench: 2433974
2025-08-24 20:01:01 +02:00
Michael ChalyandJoost VandeVondele af181d9fe1 Small simplification in probCut movepicker
Remove no longer required condition for tt moves. The idea is that if tt the value is
greater than probCut beta try tt move that is a capture anyway - even if it
doesn't pass SEE check.  This idea in various implementations passed some STCs
and was looking decent at LTCs as a gainer.

Passed STC:
https://tests.stockfishchess.org/tests/view/68aa1ee075da51a345a5a805
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 136160 W: 35189 L: 35079 D: 65892
Ptnml(0-2): 436, 16083, 34891, 16275, 395

Passed LTC:
https://tests.stockfishchess.org/tests/view/68aa91d375da51a345a5a884
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 80022 W: 20652 L: 20492 D: 38878
Ptnml(0-2): 33, 8717, 22357, 8865, 39

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

Bench: 2307940
2025-08-24 19:58:49 +02:00
Shawn XuandJoost VandeVondele e2fdf6f005 Simplify separate malus formulas
Passed Non-regression STC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 16352 W: 4336 L: 4090 D: 7926
Ptnml(0-2): 54, 1832, 4157, 2080, 53
https://tests.stockfishchess.org/tests/view/68a808f0b6fb3300203bca08

Passed Non-regression LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 94014 W: 24129 L: 23986 D: 45899
Ptnml(0-2): 47, 9917, 26934, 10064, 45
https://tests.stockfishchess.org/tests/view/68a8f45cb6fb3300203bcb5e

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

Bench: 2483704
2025-08-24 19:55:35 +02:00
Shawn XuandJoost VandeVondele 901ad7e7ee Simplify quiet move streak
Passed Non-regression STC:
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 46272 W: 12076 L: 11866 D: 22330
Ptnml(0-2): 140, 5407, 11860, 5561, 168
https://tests.stockfishchess.org/tests/view/68a9c26575da51a345a5a6a2

Passed Non-regression LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 140442 W: 35984 L: 35886 D: 68572
Ptnml(0-2): 72, 15333, 39305, 15447, 64
https://tests.stockfishchess.org/tests/view/68aa245e75da51a345a5a80d

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

Bench: 2931171
2025-08-24 19:52:42 +02:00
Shawn XuandJoost VandeVondele 85f87649bf Simplify stalemate detection
Passed Non-regression STC:
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 107392 W: 27959 L: 27818 D: 51615
Ptnml(0-2): 317, 12094, 28735, 12231, 319
https://tests.stockfishchess.org/tests/view/68a65d8ab6fb3300203bc825

Passed Non-regression LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 94014 W: 24129 L: 23986 D: 45899
Ptnml(0-2): 47, 9917, 26934, 10064, 45
https://tests.stockfishchess.org/tests/view/68a8f45cb6fb3300203bcb5e

Passed Stalemate 10k:
Elo: 2.22 ± 1.3 (95%) LOS: 100.0%
Total: 10000 W: 4626 L: 4562 D: 812
Ptnml(0-2): 1, 137, 4659, 203, 0
nElo: 12.00 ± 6.8 (95%) PairsRatio: 1.47
https://tests.stockfishchess.org/tests/view/68a65d8ab6fb3300203bc825

Supersedes #6114
Closes #6232

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

Bench: 2473929
2025-08-24 19:50:51 +02:00
Daniel MonroeandJoost VandeVondele 7fa7a36dc6 Remove upper bound in see margin
Passed simplification STC
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 99840 W: 25965 L: 25815 D: 48060
Ptnml(0-2): 326, 11708, 25688, 11886, 312
https://tests.stockfishchess.org/tests/view/68a24504b6fb3300203bbdae

Passed simplification LTC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 248388 W: 63544 L: 63556 D: 121288
Ptnml(0-2): 125, 27132, 69709, 27086, 142
https://tests.stockfishchess.org/tests/view/68a24f3bb6fb3300203bbdee

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

Bench: 2432765
2025-08-24 19:47:20 +02:00
Daniel SamekandJoost VandeVondele 2659351ce7 Remove depth reduction in the full-depth search
Passed simplification STC:
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 217184 W: 56218 L: 56195 D: 104771
Ptnml(0-2): 627, 25673, 55985, 25664, 643
https://tests.stockfishchess.org/tests/view/68a21e0eb6fb3300203bbcf3

Passed simplification LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 30474 W: 7923 L: 7713 D: 14838
Ptnml(0-2): 20, 3205, 8569, 3431, 12
https://tests.stockfishchess.org/tests/view/68a2adacb6fb3300203bc3f9

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

bench 2626263
2025-08-24 19:45:23 +02:00
Daniel MonroeandJoost VandeVondele 57d76bd459 Simplify depth condition in prior reduction
Passed simplification STC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 172864 W: 45085 L: 45015 D: 82764
Ptnml(0-2): 516, 20456, 44405, 20552, 503
https://tests.stockfishchess.org/tests/view/68a24791b6fb3300203bbdb6

Passed simplification LTC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 84738 W: 21733 L: 21578 D: 41427
Ptnml(0-2): 49, 9169, 23780, 9320, 51
https://tests.stockfishchess.org/tests/view/68a2665ab6fb3300203bc269

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

Bench: 2131292
2025-08-24 19:43:48 +02:00
DisservinandJoost VandeVondele 47d60a50b6 CI: fix typo in flag
closes https://github.com/official-stockfish/Stockfish/pull/6247

No functional change
2025-08-24 19:40:40 +02:00
FauziAkramandJoost VandeVondele 176ef577e2 Set back static constexpr
closes https://github.com/official-stockfish/Stockfish/pull/6243

No functional change
2025-08-24 19:39:49 +02:00
MyselfandJoost VandeVondele 20bc19558e Speedup_threat_by_lesser
This patch could have been considered a non-functional speedup, but changing
the ranking of illegal moves.

Passed STC:
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 131040 W: 34247 L: 33792 D: 63001
Ptnml(0-2): 407, 15281, 33675, 15764, 393
https://tests.stockfishchess.org/tests/live_elo/68a9a75b75da51a345a5a66d

Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 280146 W: 72055 L: 71242 D: 136849
Ptnml(0-2): 153, 30252, 78438, 31089, 141
https://tests.stockfishchess.org/tests/view/68a9f58475da51a345a5a6e0

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

Bench: 2321931
2025-08-24 19:37:58 +02:00
Stefan GeschwentnerandJoost VandeVondele d11f49b790 Remove log depth reduction terms.
Motivated by the elo loss of last VVLTC regression test i remove the new log
depth reductions (tuned at STC) to regain strength at VVLTC. The constant terms
are adjusted based on the old values and the changes from the last added VVLTC
tuning.

Passed VVLTC with STC bound:
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 53802 W: 14030 L: 13740 D: 26032
Ptnml(0-2): 5, 4924, 16754, 5212, 6
https://tests.stockfishchess.org/tests/view/68a9a9f575da51a345a5a675

Passed VVLTC with LTC bound:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 53658 W: 14022 L: 13699 D: 25937
Ptnml(0-2): 3, 4894, 16712, 5217, 3
https://tests.stockfishchess.org/tests/view/68a8d2b2b6fb3300203bca77

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

Bench: 2566780
2025-08-24 19:30:31 +02:00
FauziAkramandJoost VandeVondele 7fe46b5a70 VVLTC tweak
Passed VVLTC with STC bounds:
LLR: 2.94 (-2.94,2.94) <0.00,2.00>
Total: 60796 W: 15908 L: 15609 D: 29279
Ptnml(0-2): 6, 5598, 18889, 5901, 4
https://tests.stockfishchess.org/tests/view/68a1fbfeb6fb3300203bbc5c

Passed VVLTC with LTC bounds:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 24914 W: 6528 L: 6256 D: 12130
Ptnml(0-2): 4, 2263, 7648, 2541, 1
https://tests.stockfishchess.org/tests/view/68a211aeb6fb3300203bbca7

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

Bench: 2130122
2025-08-17 22:46:04 +02:00
Stefan GeschwentnerandJoost 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
87andJoost 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 GeschwentnerandJoost 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