Please pay attention :
Hi to all members
This thread only belongs to stockfish versions by its official developers If you want to share any versions from other authors , please create a separate thread for your content. Here we only want to monitor the SF devs changes by its developers between two official release intervals and monitor the engine development stages.
Thanks in advance
Stockfish
Re: Stockfish
Author: cj5716
Date: Sun Apr 21 14:50:04 2024 +0200
Timestamp: 1713703804
Tweak TT aging and replacement strategies
We change the definition of "age" from "age of this position" to "age of this TT entry".
In this way, despite being on the same position, when we save into TT, we always prefer the new entry as compared to the old one.
Passed STC:
LLR: 2.94 (-2.94,2.94) <0.00,2.00>
Total: 152256 W: 39597 L: 39110 D: 73549 Elo +1.11
Ptnml(0-2): 556, 17562, 39398, 18063, 549
https://tests.stockfishchess.org/tests/ ... e4cefbf215
Passed LTC:
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 51564 W: 13242 L: 12895 D: 25427 Elo +2.34
Ptnml(0-2): 24, 5464, 14463, 5803, 28
https://tests.stockfishchess.org/tests/ ... e4cefc153e
closes #5184
Bench 1479416
https://abrok.eu/stockfish/
Date: Sun Apr 21 14:50:04 2024 +0200
Timestamp: 1713703804
Tweak TT aging and replacement strategies
We change the definition of "age" from "age of this position" to "age of this TT entry".
In this way, despite being on the same position, when we save into TT, we always prefer the new entry as compared to the old one.
Passed STC:
LLR: 2.94 (-2.94,2.94) <0.00,2.00>
Total: 152256 W: 39597 L: 39110 D: 73549 Elo +1.11
Ptnml(0-2): 556, 17562, 39398, 18063, 549
https://tests.stockfishchess.org/tests/ ... e4cefbf215
Passed LTC:
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 51564 W: 13242 L: 12895 D: 25427 Elo +2.34
Ptnml(0-2): 24, 5464, 14463, 5803, 28
https://tests.stockfishchess.org/tests/ ... e4cefc153e
closes #5184
Bench 1479416
https://abrok.eu/stockfish/
Re: Stockfish
Author: gab8192
Date: Wed Apr 24 18:38:20 2024 +0200
Timestamp: 1713976700
Implement accumulator refresh table
For each thread persist an accumulator cache for the network, where each
cache contains multiple entries for each of the possible king squares.
When the accumulator needs to be refreshed, the cached entry is used to more
efficiently update the accumulator, instead of rebuilding it from scratch.
This idea, was first described by Luecx (author of Koivisto) and
is commonly referred to as "Finny Tables".
When the accumulator needs to be refreshed, instead of filling it with
biases and adding every piece from scratch, we...
1. Take the `AccumulatorRefreshEntry` associated with the new king bucket
2. Calculate the features to activate and deactivate (from differences
between bitboards in the entry and bitboards of the actual position)
3. Apply the updates on the refresh entry
4. Copy the content of the refresh entry accumulator to the accumulator
we were refreshing
5. Copy the bitboards from the position to the refresh entry, to match
the newly updated accumulator
Results at STC:
https://tests.stockfishchess.org/tests/ ... e4cefc1386
(first version)
https://tests.stockfishchess.org/tests/ ... e4cefc6560
(final)
Non-Regression between first and final:
https://tests.stockfishchess.org/tests/ ... e4cefc660a
STC SMP:
https://tests.stockfishchess.org/tests/ ... e4cefc667c
closes https://github.com/official-stockfish/S ... /pull/5183
No functional change
Date: Wed Apr 24 18:38:20 2024 +0200
Timestamp: 1713976700
Implement accumulator refresh table
For each thread persist an accumulator cache for the network, where each
cache contains multiple entries for each of the possible king squares.
When the accumulator needs to be refreshed, the cached entry is used to more
efficiently update the accumulator, instead of rebuilding it from scratch.
This idea, was first described by Luecx (author of Koivisto) and
is commonly referred to as "Finny Tables".
When the accumulator needs to be refreshed, instead of filling it with
biases and adding every piece from scratch, we...
1. Take the `AccumulatorRefreshEntry` associated with the new king bucket
2. Calculate the features to activate and deactivate (from differences
between bitboards in the entry and bitboards of the actual position)
3. Apply the updates on the refresh entry
4. Copy the content of the refresh entry accumulator to the accumulator
we were refreshing
5. Copy the bitboards from the position to the refresh entry, to match
the newly updated accumulator
Results at STC:
https://tests.stockfishchess.org/tests/ ... e4cefc1386
(first version)
https://tests.stockfishchess.org/tests/ ... e4cefc6560
(final)
Non-Regression between first and final:
https://tests.stockfishchess.org/tests/ ... e4cefc660a
STC SMP:
https://tests.stockfishchess.org/tests/ ... e4cefc667c
closes https://github.com/official-stockfish/S ... /pull/5183
No functional change