6822 Commits

Author SHA1 Message Date
Kieren Pearson 75edbee01e Use huge pages for worker data
As the worker data is quite large (28MB after #6350) we can make use of huge pages as a speedup.

prior to #6350

STC passed elo gaining bounds:
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 166272 W: 43479 L: 42993 D: 79800
Ptnml(0-2): 540, 17598, 46365, 18102, 531
https://tests.stockfishchess.org/tests/view/68e9f3c0d323fd15c04e3ba4

Tested the speedup on a large machine with speedtest:
==== master ====
Average (over 20):  288644510
==== largePageWorker ====
Average (over 20):  292082422

Test after #6350:
==== rustam-cpp-testPR ====
Average (over 20):  291035351
==== rustam-cpp-testPR-pages ====
Average (over 20):  291937367

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

No functional change
stockfish-dev-20251014-75edbee0
2025-10-14 17:46:13 +02:00
Robert Nurnberg @ elitebook 315f8ba4bf let CI check for mate scores outside the valid range
closes https://github.com/official-stockfish/Stockfish/pull/6358

No functional change
2025-10-14 17:34:17 +02:00
Daniel Monroe e7a4708ad5 Remove condition in qsearch
Instead of skipping non-captures when pawn history is exceptionally high, skip all non-captures

Passed non-regression STC
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 38016 W: 10018 L: 9795 D: 18203
Ptnml(0-2): 155, 4346, 9755, 4625, 127
https://tests.stockfishchess.org/tests/view/68e43d4aa017f472e763db2e

Passed rebased non-regression LTC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 96048 W: 24854 L: 24710 D: 46484
Ptnml(0-2): 47, 10504, 26780, 10644, 49
https://tests.stockfishchess.org/tests/view/68e59352a017f472e763dcf9

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

bench 2343840
2025-10-14 17:32:32 +02:00
rustam-cpp 63d449d1d9 bigger PAWN_HISTORY_SIZE
STC (10+0.1 th1) was accepted:
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 75712 W: 19701 L: 19326 D: 36685
Ptnml(0-2): 254, 8738, 19513, 9081, 270
https://tests.stockfishchess.org/tests/view/68e286d5fa806e2e8393d160

LTC (60+0.6 th1) was accepted:
LLR: 2.96 (-2.94,2.94) <0.50,2.50>
Total: 108492 W: 28068 L: 27604 D: 52820
Ptnml(0-2): 60, 11639, 30390, 12091, 66
https://tests.stockfishchess.org/tests/view/68e3e564a017f472e763dac0

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

bench 2128316
2025-10-14 17:27:42 +02:00
mstembera c956df4cbb Split accumulator 3-way for avxvnni
This does the same thing for x86-64-avxvnni as #6336, #6339.

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

No functional change
2025-10-14 17:25:48 +02:00
dav1312 fc5d296f9d Update get_native_properties.sh for AVXVNNI
Update get_native_properties.sh to detect and report 'x86-64-avxvnni' when the CPU supports it.

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

No functional change
2025-10-14 17:22:30 +02:00
Daniel Samek e18ed795f2 Introduce 4-ply continuation correction history
Passed STC:
LLR: 2.94 (-2.94,2.94) <0.00,2.00>
Total: 113984 W: 29752 L: 29323 D: 54909
Ptnml(0-2): 376, 13191, 29435, 13608, 382
https://tests.stockfishchess.org/tests/view/68dc3576fa806e2e8393bd93

Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 80154 W: 20823 L: 20417 D: 38914
Ptnml(0-2): 47, 8600, 22383, 8994, 53
https://tests.stockfishchess.org/tests/view/68df83e0fa806e2e8393cbe8

Passed non-regression VLTC (rebased):
LLR: 2.98 (-2.94,2.94) <-1.75,0.25>
Total: 38158 W: 9992 L: 9805 D: 18361
Ptnml(0-2): 3, 3406, 12075, 3591, 4
https://tests.stockfishchess.org/tests/view/68e22f2afa806e2e8393d0ed

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

bench 2169281
2025-10-07 11:50:51 +02:00
Daniel Monroe feb17e5acf Make sure we don't move a nonexistent piece in SEE
added assert.

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

No functional change
2025-10-07 11:49:00 +02:00
mstembera ee243f0fdc Remove x86-64-vnni256 target
When vnni256 was first introduced #3038 it was very slightly faster than vnni512
on some machines. We have since sped up vnni512 significantly (#4796 over 10%
alone, #6139, and probably others I'm forgetting). Since any machine that can
run vnni256 can run vnni512 this arch is no longer useful.

Note, x86-64-avxvnni still covers targets that don't have AVX512 but do have
VNNI on 128- and 256-bit vectors.

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

No functional change
2025-10-05 09:38:44 +02:00
Shawn Xu e5c2dc5edd remove clang-format workaround
closes https://github.com/official-stockfish/Stockfish/pull/6332

No functional change
2025-10-05 09:33:42 +02:00
Timothy Herchen b09339a420 Split accumulator 3-Way
Squeeze a tiny bit more juice from the original idea in #6336 which this is on top of.

https://tests.stockfishchess.org/tests/view/68dddd85fa806e2e8393c0b9
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 156320 W: 40925 L: 40447 D: 74948
Ptnml(0-2): 427, 17330, 42172, 17800, 431

4-way doesn't look to be better than this.
https://tests.stockfishchess.org/tests/view/68dde19efa806e2e8393c0c1

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

No functional change

Co-authored-by: M Stembera <m_stembera@yahoo.com>
2025-10-05 09:33:23 +02:00
FauziAkram 7a7c033a86 Tweak Correction History Bonus Asymmetrically
Refine the correction history update by applying an asymmetric bonus based on the type of evaluation error. It differentiates between negative corrections and positive corrections.

Passed STC:
LLR: 2.93 (-2.94,2.94) <0.00,2.00>
Total: 165184 W: 43314 L: 42807 D: 79063
Ptnml(0-2): 551, 19391, 42261, 19778, 611
https://tests.stockfishchess.org/tests/view/68cae49902c43c969fe7f008

Passed LTC:
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 243234 W: 62765 L: 62029 D: 118440
Ptnml(0-2): 163, 25996, 68551, 26756, 151
https://tests.stockfishchess.org/tests/view/68d1c50dfa806e2e8393aa1f

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

Bench: 2746404
2025-10-05 09:25:44 +02:00
nicolasduhamel 5c93616a3f Adjust aspiration window
Narrow the aspiration window after fail high.

Passed STC:
LLR: 2.98 (-2.94,2.94) <0.00,2.00>
Total: 51296 W: 13550 L: 13207 D: 24539
Ptnml(0-2): 165, 5971, 13052, 6276, 184
https://tests.stockfishchess.org/tests/view/68d99afffa806e2e8393b7ae

Passed LTC;
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 87780 W: 22795 L: 22375 D: 42610
Ptnml(0-2): 52, 9340, 24694, 9744, 60
https://tests.stockfishchess.org/tests/view/68dae0a6fa806e2e8393baad

See the comments in #6293 discussing the mechanisms leading to issue #6296

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

Bench: 2336606
2025-10-05 09:23:02 +02:00
Shawn Xu 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 Xu 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 Xu 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
FauziAkram 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 Xu 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
Shawn Xu 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 Herchen 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 Chaly 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
Nonlinear2 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
FauziAkram 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 Mineta 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 Buchwald 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 @ elitebook 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
Disservin 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 Mineta 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 Geschwentner 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 Xu 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 Xu 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 Xu 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 Xu 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 Monroe 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 VandeVondele 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 Surkov 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 Buchwald 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 Hellwig 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 Xu 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
Shawn Xu 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 Xu 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 @ elitebook 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
Nonlinear2 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 Sinha 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 Buchwald 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 Xu 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 Geschwentner 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
FauziAkram 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 Chaly 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 Xu 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