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
Daniel Monroe and Joost VandeVondele
c13f883dc4
simplify away TT history term
...
Passed simplification STC
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 163168 W: 42136 L: 42055 D: 78977
Ptnml(0-2): 410, 19224, 42212, 19351, 387
https://tests.stockfishchess.org/tests/view/684e16ee703522d4f129c9e9
Passed simplification LTC
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 303144 W: 77580 L: 77647 D: 147917
Ptnml(0-2): 150, 33110, 85134, 33013, 165
https://tests.stockfishchess.org/tests/view/6852ff97703522d4f129d5f7
closes https://github.com/official-stockfish/Stockfish/pull/6152
bench: 2294774
2025-07-24 09:59:00 +02:00
Daniel Monroe and Joost VandeVondele
a43f12ef08
Simplify away constants in statscore
...
Passed simplification STC
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 317280 W: 81589 L: 81678 D: 154013
Ptnml(0-2): 799, 37651, 81847, 37526, 817
https://tests.stockfishchess.org/tests/view/684e197a703522d4f129c9f0
Passed simplification LTC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 174816 W: 44656 L: 44593 D: 85567
Ptnml(0-2): 83, 19064, 49058, 19113, 90
https://tests.stockfishchess.org/tests/view/6858aa54a596a06817bb924f
closes https://github.com/official-stockfish/Stockfish/pull/6150
bench: 2508140
2025-07-24 09:56:36 +02:00
FauziAkram and Joost VandeVondele
6a09a24cd8
Remove depth condition from ttCapture reduction
...
Passed STC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 25920 W: 6822 L: 6593 D: 12505
Ptnml(0-2): 54, 2932, 6783, 3113, 78
https://tests.stockfishchess.org/tests/view/6853f9c2038630d25f468672
Passed LTC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 177318 W: 45339 L: 45278 D: 86701
Ptnml(0-2): 85, 19333, 49765, 19388, 88
https://tests.stockfishchess.org/tests/view/6854468a038630d25f4686c0
closes https://github.com/official-stockfish/Stockfish/pull/6149
bench: 2437275
2025-07-24 09:52:35 +02:00
Daniel Monroe and Joost VandeVondele
62f08568cd
Simplify PV term in lmr
...
Passed simplification STC
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 204000 W: 52541 L: 52506 D: 98953
Ptnml(0-2): 561, 24133, 52589, 24144, 573
https://tests.stockfishchess.org/tests/view/684f24ce703522d4f129cab5
Passed simplification LTC
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 156150 W: 39890 L: 39807 D: 76453
Ptnml(0-2): 82, 16882, 44043, 17007, 61
https://tests.stockfishchess.org/tests/view/6855d8bf1d0d9fc6587538f8
closes https://github.com/official-stockfish/Stockfish/pull/6148
bench 2766493
2025-07-24 09:49:43 +02:00
FauziAkram and Disservin
ce73441f20
Simplify sudden death time optimization
...
Passed Sudden Death STC:
https://tests.stockfishchess.org/tests/view/68455fe5375c2b77d9855351
LLR: 2.91 (-2.94,2.94) <-1.75,0.25>
Total: 49248 W: 13008 L: 12798 D: 23442
Ptnml(0-2): 309, 5491, 12821, 5687, 316
Passed Sudden Death LTC:
https://tests.stockfishchess.org/tests/view/6845a392375c2b77d98553cf
LLR: 3.01 (-2.94,2.94) <-1.75,0.25>
Total: 551070 W: 141699 L: 142031 D: 267340
Ptnml(0-2): 1923, 60608, 150916, 60054, 2034
Passed Standard STC:
https://tests.stockfishchess.org/tests/view/683c5ebb6ec7634154f9d989
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 142624 W: 36808 L: 36709 D: 69107
Ptnml(0-2): 302, 15448, 39745, 15483, 334
Passed Standard LTC:
https://tests.stockfishchess.org/tests/view/683f1a4f6ec7634154f9dc5a
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 146922 W: 37381 L: 37296 D: 72245
Ptnml(0-2): 69, 13552, 46117, 13671, 52
closes https://github.com/official-stockfish/Stockfish/pull/6132
Bench: 2249459
2025-07-02 18:41:46 +02:00
FauziAkram and Disservin
e695b9537e
Remove eval & beta diff from NM reduction
...
Passed STC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 43456 W: 11178 L: 10966 D: 21312
Ptnml(0-2): 114, 5078, 11114, 5326, 96
https://tests.stockfishchess.org/tests/view/6849ae13e84567164b5c9de9
Passed LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 63090 W: 16302 L: 16125 D: 30663
Ptnml(0-2): 37, 6837, 17603, 7048, 20
https://tests.stockfishchess.org/tests/view/684ab516e84567164b5ca02f
closes https://github.com/official-stockfish/Stockfish/pull/6134
Bench: 2249459
2025-07-02 18:41:46 +02:00
mstembera and Disservin
ce7254b5ea
Optimize find_nnz() using AVX512
...
About a 1% speedup for ARCH x86-64-avx512 and x86-64-vnni512.
Note: This could be optimized further if we wanted to add an ARCH
supporting VBMI2 which is even more modern than VNNI.
https://en.wikichip.org/wiki/x86/avx512_vbmi2
closes https://github.com/official-stockfish/Stockfish/pull/6139
No functional change
2025-07-02 18:41:45 +02:00
MinetaS and Disservin
ea85a54fef
Fix trivial errors in Makefile
...
1. Remove "default" rule as "default" has no special meaning as a rule
name. Make runs the very first rule whose name doesn't begin with a dot
(which is "help" currently).
2. Make "format" rule not update dependencies.
closes https://github.com/official-stockfish/Stockfish/pull/6140
No functional change
2025-07-02 18:32:12 +02:00
Robert Nurnberg @ elitebook and Disservin
84e2f3851d
Introduce a constant for ValueList size in search()
...
Having the size of these lists in two separate places likely contributed
to the crashes seen during the recent tuning attempt
https://tests.stockfishchess.org/tests/view/685c413343ce022d15794536 .
Thanks to @MinetaS for spotting this.
closes https://github.com/official-stockfish/Stockfish/pull/6142
No functional change
2025-07-02 18:32:02 +02:00
Daniel Monroe and Disservin
3a0fff96cf
Simplify quiet move streak logic
...
Passed non-regression STC
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 148960 W: 38409 L: 38312 D: 72239
Ptnml(0-2): 372, 17664, 38318, 17747, 379
https://tests.stockfishchess.org/tests/view/684c5773703522d4f129c5f7
Passed non-regression LTC
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 180720 W: 46188 L: 46130 D: 88402
Ptnml(0-2): 84, 19608, 50929, 19644, 95
https://tests.stockfishchess.org/tests/view/68505fa5703522d4f129cbab
closes https://github.com/official-stockfish/Stockfish/pull/6143
Bench: 2055894
2025-07-02 18:31:04 +02:00
Shawn Xu and Disservin
318c948c4d
Remove non-functional low-ply history fill
...
lowPlyHistory is always cleared at the start of `iterative_deepening`, so clearing it here is non-functional.
closes https://github.com/official-stockfish/Stockfish/pull/6144
No functional change
2025-07-02 18:31:04 +02:00
Daniel Monroe and Disservin
a7a56c41f6
Simplify history term in futility pruning
...
Passed simplification STC
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 298816 W: 76814 L: 76881 D: 145121
Ptnml(0-2): 726, 35477, 77057, 35434, 714
https://tests.stockfishchess.org/tests/view/683f440f6ec7634154f9dc7f
Passed simplification LTC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 237774 W: 60801 L: 60802 D: 116171
Ptnml(0-2): 91, 26088, 66532, 26083, 93
https://tests.stockfishchess.org/tests/view/68441189ffbc71bd236778de
closes https://github.com/official-stockfish/Stockfish/pull/6130
Bench: 2411502
2025-07-02 18:31:04 +02:00
pb00067 and Disservin
34b75f1575
Restore integrity of MovePicker::can_move_king_or_pawn
...
PR6005 broken by PR6071
passed STC non regression
https://tests.stockfishchess.org/tests/view/6839791f6ec7634154f9d312
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 31776 W: 8353 L: 8130 D: 15293
Ptnml(0-2): 74, 3566, 8382, 3795, 71
passed LTC non-regression
https://tests.stockfishchess.org/tests/view/6839c87a6ec7634154f9d367
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 120756 W: 31015 L: 30899 D: 58842
Ptnml(0-2): 50, 12732, 34703, 12838, 55
closes https://github.com/official-stockfish/Stockfish/pull/6119
Bench: 1945300
2025-07-02 18:31:02 +02:00
disservin and GitHub
15555e8f4a
Disable linux gcc riscv64 ( #6145 )
...
Temporarily disable it, until we figure out the toolchain issues which are causing the crashes.
closes https://github.com/official-stockfish/Stockfish/pull/6145
No functional change
2025-06-29 12:33:20 +02:00
Shawn Xu and Joost VandeVondele
5337edfdb6
remove non-functional else
...
since we break out of the loop in the other branch
closes https://github.com/official-stockfish/Stockfish/pull/6116
no functional change
2025-06-02 22:12:37 +02:00
Daniel Monroe and Joost VandeVondele
9ac756695e
reduce depth by 5 in probcut
...
Passed simplification STC
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 63328 W: 16402 L: 16213 D: 30713
Ptnml(0-2): 174, 7378, 16340, 7629, 143
https://tests.stockfishchess.org/tests/view/6833530e6ec7634154f9be7f
Passed simplification LTC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 69936 W: 17795 L: 17625 D: 34516
Ptnml(0-2): 29, 7631, 19474, 7809, 25
https://tests.stockfishchess.org/tests/view/68335e386ec7634154f9c266
closes https://github.com/official-stockfish/Stockfish/pull/6120
Bench: 2307268
2025-06-02 22:09:11 +02:00
Daniel Monroe and Joost VandeVondele
254b6d5e85
Simplify corrections in extension margins
...
Passed simplification STC
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 96192 W: 25002 L: 24852 D: 46338
Ptnml(0-2): 242, 10868, 25716, 11038, 232
https://tests.stockfishchess.org/tests/view/683b44cb6ec7634154f9d6ac
Passed simplification LTC
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 83334 W: 21473 L: 21317 D: 40544
Ptnml(0-2): 37, 8877, 23674, 9051, 28
https://tests.stockfishchess.org/tests/view/683b79786ec7634154f9d75a
closes https://github.com/official-stockfish/Stockfish/pull/6117
Bench: 2294814
2025-06-02 22:05:11 +02:00
Shawn Xu and Joost VandeVondele
259bdaaa9f
Remove an unnecessary bound check
...
When failing high, it is always true that `alpha < beta` and `beta <=
bestValue`. Therefore if alpha and bestValue is not in decisive range, it is
guaranteed that beta is not.
closes https://github.com/official-stockfish/Stockfish/pull/6115
no functional change
2025-06-02 21:57:19 +02:00
Shawn Xu and Joost VandeVondele
c9af7674bc
Introduce Secondary TT Aging
...
When a high-depth TT entry fail to produce a cutoff, decrease the stored depth
by 1. This is intended to help cases such as #5023
(https://github.com/official-stockfish/Stockfish/issues/5023#issuecomment-2814209391 ),
where entries with extremely high depths prevent TT cutoffs, contributing to
search explosions.
Passed STC:
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 128800 W: 33502 L: 33053 D: 62245
Ptnml(0-2): 331, 15084, 33149, 15477, 359
https://tests.stockfishchess.org/tests/view/683958e56ec7634154f9d2a9
Passed LTC:
LLR: 2.97 (-2.94,2.94) <0.50,2.50>
Total: 63288 W: 16376 L: 16005 D: 30907
Ptnml(0-2): 26, 6712, 17798, 7081, 27
https://tests.stockfishchess.org/tests/view/683aa4026ec7634154f9d469
closes https://github.com/official-stockfish/Stockfish/pull/6113
Bench: 2144705
2025-06-02 21:55:55 +02:00
Daniel Monroe and Joost VandeVondele
3747a19937
Simplify away depth condition in IIR
...
Passed simplification STC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 359520 W: 92714 L: 92849 D: 173957
Ptnml(0-2): 977, 42640, 92614, 42599, 930
https://tests.stockfishchess.org/tests/view/6833705d6ec7634154f9c302
Passed simplification LTC
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 201756 W: 51544 L: 51507 D: 98705
Ptnml(0-2): 89, 21965, 56728, 22012, 84
https://tests.stockfishchess.org/tests/view/68338e386ec7634154f9c790
Passed simplification VLTC
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 48558 W: 12675 L: 12492 D: 23391
Ptnml(0-2): 9, 4779, 14516, 4970, 5
https://tests.stockfishchess.org/tests/view/6838e0b26ec7634154f9d25b
closes https://github.com/official-stockfish/Stockfish/pull/6112
Bench: 2302583
2025-06-02 21:52:38 +02:00
Daniel Monroe and Joost VandeVondele
70ff5e3163
Simplify away cutoff term in prior countermove bonus
...
Passed simplification STC
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 61120 W: 16010 L: 15819 D: 29291
Ptnml(0-2): 150, 7105, 15869, 7276, 160
https://tests.stockfishchess.org/tests/view/683560226ec7634154f9ce0f
Passed simplification LTC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 225090 W: 57555 L: 57543 D: 109992
Ptnml(0-2): 104, 24367, 63603, 24355, 116
https://tests.stockfishchess.org/tests/view/6836420c6ec7634154f9cf5c
closes https://github.com/official-stockfish/Stockfish/pull/6111
Bench: 2472910
2025-06-02 21:49:43 +02:00
Daniel Monroe and Joost VandeVondele
ddefd6eb6b
Simplify away check term in statscore
...
Passed simplification STC
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 61696 W: 16031 L: 15841 D: 29824
Ptnml(0-2): 151, 7160, 16046, 7330, 161
https://tests.stockfishchess.org/tests/view/68353fcc6ec7634154f9cdd5
Passed simplification LTC
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 237990 W: 60994 L: 60995 D: 116001
Ptnml(0-2): 95, 25964, 66903, 25913, 120
https://tests.stockfishchess.org/tests/view/683642256ec7634154f9cf5e
closes https://github.com/official-stockfish/Stockfish/pull/6110
Bench: 2521003
2025-06-02 21:47:26 +02:00
Nonlinear2 and Joost VandeVondele
8da3c2155a
Simplify NMP eval in qsearch
...
Passed non-regression STC:
https://tests.stockfishchess.org/tests/view/6834e9436ec7634154f9cd6e
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 24864 W: 6626 L: 6394 D: 11844
Ptnml(0-2): 62, 2806, 6477, 3012, 75
Passed non-regression LTC:
https://tests.stockfishchess.org/tests/view/683598fd6ec7634154f9ce82
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 200148 W: 51461 L: 51424 D: 97263
Ptnml(0-2): 92, 21672, 56503, 21721, 86
closes https://github.com/official-stockfish/Stockfish/pull/6109
Bench: 2316591
2025-06-02 21:44:29 +02:00
Carlos Esparza and Joost VandeVondele
5695486db9
Fix outdated comment
...
closes https://github.com/official-stockfish/Stockfish/pull/6108
No functional change
2025-06-02 21:40:13 +02:00
Robert Nurnberg @ elitebook and Joost VandeVondele
9debc540e5
Fix clang-format version in CONTRIBUTING.md
...
closes https://github.com/official-stockfish/Stockfish/pull/6107
No functional change
2025-06-02 21:38:53 +02:00
Shawn Xu and Joost VandeVondele
d0212906bd
Simplify stat eval history adjustment further
...
closes https://github.com/official-stockfish/Stockfish/pull/6106
bench 2074807
2025-06-02 21:37:37 +02:00
mstembera and Joost VandeVondele
29b0c07ac8
Simplify Position::pieces()
...
closes https://github.com/official-stockfish/Stockfish/pull/6104
No functional change
2025-06-02 21:28:18 +02:00
mstembera and Joost VandeVondele
d27298d7dc
Remove unused threatenedPieces
...
threatenedPieces is no longer used since #6023
Also can_move_king_or_pawn() can be const.
Also remove a couple of redundant declarations.
closes https://github.com/official-stockfish/Stockfish/pull/6101
No functional change
2025-06-02 21:24:38 +02:00
Shawn Xu and Joost VandeVondele
dc85c5a4c9
Remove nnz lookup table load optimization
...
Passed Non-regression STC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 63296 W: 16491 L: 16311 D: 30494
Ptnml(0-2): 129, 6624, 17972, 6784, 139
https://tests.stockfishchess.org/tests/view/6833ce486ec7634154f9cb22
Passed 2nd Non-regression STC:
LLR: 2.97 (-2.94,2.94) <-1.75,0.25>
Total: 369568 W: 95314 L: 95451 D: 178803
Ptnml(0-2): 897, 40231, 102601, 40222, 833
https://tests.stockfishchess.org/tests/view/68355c956ec7634154f9ce07
closes https://github.com/official-stockfish/Stockfish/pull/6100
no functional change
2025-06-02 21:21:54 +02:00
Daniel Monroe and Joost VandeVondele
9fd40b9ea8
Simplify tt depth in stat eval history adjustment
...
Passed simplification STC
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 102208 W: 26498 L: 26349 D: 49361
Ptnml(0-2): 284, 12095, 26166, 12306, 253
https://tests.stockfishchess.org/tests/view/683354c76ec7634154f9be88
Passed simplification LTC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 133422 W: 34050 L: 33945 D: 65427
Ptnml(0-2): 56, 14473, 37559, 14556, 67
https://tests.stockfishchess.org/tests/view/683363626ec7634154f9c298
closes https://github.com/official-stockfish/Stockfish/pull/6099
Bench: 2652411
2025-06-02 21:19:17 +02:00
Daniel Monroe and Joost VandeVondele
dfa176fc7e
Small tt verify simplification
...
Also fix probcut comment
Passed non-regression STC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 69728 W: 18080 L: 17909 D: 33739
Ptnml(0-2): 161, 7157, 20044, 7354, 148
https://tests.stockfishchess.org/tests/view/68324b116ec7634154f9b478
closes https://github.com/official-stockfish/Stockfish/pull/6094
No functional change
2025-06-02 21:15:56 +02:00
FauziAkram and Joost VandeVondele
9b79b75c9b
Enforce minimum compiler versions
...
gcc 9.3
clang 10
using unsupported compiler versions will generate an error,
older version might miscompile SF
CI: improves output on failed bench output
closes https://github.com/official-stockfish/Stockfish/pull/6032
No functional change
2025-06-02 21:09:19 +02:00
FauziAkram and Joost VandeVondele
73c55e8949
Simplify Double Margin Formula
...
Passed STC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 267296 W: 69214 L: 69248 D: 128834
Ptnml(0-2): 760, 31511, 69141, 31475, 761
https://tests.stockfishchess.org/tests/view/682f5d9a6ec7634154f9b01e
Passed LTC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 67872 W: 17460 L: 17289 D: 33123
Ptnml(0-2): 25, 7238, 19243, 7401, 29
https://tests.stockfishchess.org/tests/view/6833074b6ec7634154f9b5ae
Passed VLTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 118000 W: 30337 L: 30222 D: 57441
Ptnml(0-2): 15, 11783, 35289, 11898, 15
https://tests.stockfishchess.org/tests/view/683336c56ec7634154f9ba46
closes https://github.com/official-stockfish/Stockfish/pull/6097
Bench: 2312696
2025-05-25 21:31:12 +02:00
ppigazzini and Joost VandeVondele
e3adfaf8fc
build & ci: update to NDK r27c API level 29
...
Update to the latest LTS version NDK r27c (27.2.12479018),
the previous NDK are unsupported by Google, see:
https://developer.android.com/ndk/downloads
A build with NDK r27c and API level < 29 returns this error:
"executable's TLS segment is underaligned: alignment is 8 (skew 0), needs to be at least 64 for ARM64 Bionic"
Update the API level to 29 to use the native ELF LTS and avoid the error:
https://android.googlesource.com/platform/bionic/+/HEAD/docs/elf-tls.md
https://android.googlesource.com/platform/bionic/+/HEAD/android-changes-for-ndk-developers.md#elf-tls-available-for-api-level-29
A dynamic link build of Stockfish uses these libraries:
ldd stockfish-android-armv8-dynamic-api35
libm.so => /system/lib64/libm.so
libdl.so => /system/lib64/libdl.so
libc.so => /system/lib64/libc.so
ld-android.so => /system/lib64/ld-android.so
ld-android.so : the dynamic linker used by Android (on Linux is named ld-linux.so),
responsible for loading and linking shared libraries into an executable at runtime.
libdl.so : interface/library layer that provides function for dynamic loading,
relies on the underlying functionality provided by the dynamic linker
libm.so : math library for Android
libc.so : standard C library for Android
References:
Doc for native (C/C++) API
https://developer.android.com/ndk/guides/stable_apis
C libraries (libc, libm, libdl):
https://developer.android.com/ndk/guides/stable_apis#c_library
Bionic changes with API levels:
https://android.googlesource.com/platform/bionic/+/HEAD/docs/status.md
NDK r27c build system:
https://android.googlesource.com/platform/ndk/+/ndk-r27-release/docs/BuildSystemMaintainers.md
CI: Update to NDK r27c (27.2.12479018), the default version in GitHub runner,
to switch to a recent clang 18.
A PGO build requires static linking, because the NDK doesn't ship
the Android loaders (linker/linker64), see:
https://groups.google.com/g/android-ndk/c/3Ep6zD3xxSY
The API level should not be an issue when distributing a static build,
use the API 29, the oldest one not affected by the LTS alignement issue.
closes https://github.com/official-stockfish/Stockfish/pull/6081
No functional change
2025-05-25 21:28:53 +02:00
Кирилл Зарипов and Joost VandeVondele
bebffc5622
Adjust futility pruning thresholds using history
...
Passed STC:
https://tests.stockfishchess.org/tests/view/6833095a6ec7634154f9b5b3
LLR: 2.93 (-2.94,2.94) <0.00,2.00>
Total: 56896 W: 14946 L: 14604 D: 27346
Ptnml(0-2): 117, 6674, 14561, 6942, 154
Passed LTC:
https://tests.stockfishchess.org/tests/view/6833179d6ec7634154f9b5da
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 200742 W: 51660 L: 51012 D: 98070
Ptnml(0-2): 96, 21520, 56473, 22204, 78
Passed Non-regression SMP STC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 29080 W: 7591 L: 7373 D: 14116
Ptnml(0-2): 38, 3178, 7881, 3414, 29
https://tests.stockfishchess.org/tests/view/6833689d6ec7634154f9c2ba
closes https://github.com/official-stockfish/Stockfish/pull/6092
Bench: 2305697
2025-05-25 21:24:09 +02:00
Shawn Xu and Joost VandeVondele
00b1540e01
Always Decrease Reduction on TTMove
...
Passed VVLTC w/ LTC Bounds:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 57792 W: 15005 L: 14676 D: 28111
Ptnml(0-2): 2, 5241, 18082, 5568, 3
https://tests.stockfishchess.org/tests/view/682a0e3c6ec7634154f9a07e
Passed VVLTC w/ STC Bounds:
LLR: 2.94 (-2.94,2.94) <0.00,2.00>
Total: 372298 W: 96342 L: 95655 D: 180301
Ptnml(0-2): 37, 34598, 116181, 35307, 26
https://tests.stockfishchess.org/tests/view/682a45b16ec7634154f9a3b3
STC Elo Estimate:
Elo: 0.15 ± 1.4 (95%) LOS: 58.3%
Total: 59612 W: 15414 L: 15388 D: 28810
Ptnml(0-2): 166, 6959, 15527, 6991, 163
nElo: 0.30 ± 2.8 (95%) PairsRatio: 1.00
https://tests.stockfishchess.org/tests/view/68335d276ec7634154f9c25c
closes https://github.com/official-stockfish/Stockfish/pull/6095
bench 2634355
2025-05-25 21:19:59 +02:00
Daniel Samek and Joost VandeVondele
805a2c1672
Simplify FutilityMoveCount
...
Inlined condition, instead of a function.
closes https://github.com/official-stockfish/Stockfish/pull/6096
no functional change
2025-05-25 21:12:27 +02:00
Кирилл Зарипов and Joost VandeVondele
eb27d9420f
Make ProbCut search shallower in cutNode
...
Passed STC:
https://tests.stockfishchess.org/tests/view/6832d2436ec7634154f9b4fc
LLR: 2.93 (-2.94,2.94) <0.00,2.00>
Total: 455072 W: 118162 L: 117237 D: 219673
Ptnml(0-2): 1233, 53409, 117362, 54264, 1268
Passed LTC:
https://tests.stockfishchess.org/tests/view/6833323e6ec7634154f9ba17
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 128436 W: 32916 L: 32415 D: 63105
Ptnml(0-2): 50, 13737, 36137, 14250, 44
closes https://github.com/official-stockfish/Stockfish/pull/6093
Bench: 2232447
2025-05-25 21:05:53 +02:00