Bread 3.0.0 is much stronger than version 2.1.1 thanks to various search and NNUE improvements. The code has been largely refactored and the occasional search explosions should now be fixed. You can find the progression tests results in the table below:
| Short time control (8 + 0.08 s) | +158 Elo |
| Long time control (40 + 0.4 s) | +155 Elo |
What's new:
Main search:
- material scaling (~26 elo)
- pawn correction history (~17 elo)
- TT refactors, TT entry replacement (~12 elo)
- SPSA tunes (~10 elo)
- sorted move generation improvements (~ 8 elo)
- better search termination (~7 elo)
- history bonus tweaks (~5 elo)
- refactor SEE (~5 elo)
- add skip quiets to qsearch (~ 4 elo)
- add double extensions (~4 elo)
- capture history (~2 elo)
NNUE:
- a modified architecture ((768x10 -> 1024)x2 -> 1x8) featuring input buckets and training data from a new training stage (~50 elo)
- add support for AVX512 instructions
- avoid recomputing both accumulators when the king moves (~10 elo)
- add finny tables (~3 elo)
- various refactors (~5 elo)
Simplifications / Bug fixes:
- fixed the
go infinitecommand. - fixed occasional search explosions
Progression tests results
STC: 8 + 0.08 s
Elo | 158.45 +- 4.95 (95%)
Conf | 8.0+0.08s Threads=1 Hash=32MB
Games | N: 10104 W: 4962 L: 649 D: 4493
Penta | [21, 256, 1310, 2319, 1146]
https://nonlinear.eu.pythonanywhere.com/test/1000/
LTC: 40 + 0.4 s
Elo | 155.44 +- 4.51 (95%)
Conf | 40.0+0.40s Threads=1 Hash=128MB
Games | N: 10020 W: 4596 L: 390 D: 5034
Penta | [6, 160, 1425, 2460, 959]
https://nonlinear.eu.pythonanywhere.com/test/1001/