In this version:
- Support for networks with attention body and smolgen added to blas, cuda, metal and onnx backends.
- WDL conversion for more realistic WDL score and contempt. Adds an Elo based WDL transformation of the NN value head output. Helps with more accurate play at high level (WDL sharpening), more aggressive play against weaker opponents and draw avoiding openings (contempt), piece odds play. For details on how it works see https://lczero.org/blog/2023/07/the-lc0-v0.30.0-wdl-rescale/contempt-implementation/.
- A new score type
WDL_mu
which follows the new eval convention, where +1.00 means 50% white win chance. - Changed mlh threshold effect to create a smooth transition.
WDL_mu
score type is now the default and the--moves-left-threshold
default was changed from 0 to 0.8.- Simplified to a single
--draw-score
parameter, adjusting the draw score from white's perspective: 0 gives standard scoring, -1 gives Armageddon scoring. - Updated describenet for new net architectures.
- Added a
first-move-bonus
option to the legacy time manager, to accompanybook-ply-bonus
for shallow openings. - Persistent L2 cache optimization for the cuda backend. Use the
cache_opt=true
backend option to turn it on. - Some performance improvements for the cuda, onnx and blas backends.
- Added the
threads
backend option to onnx, defaults to 0 (let the onnxruntime decide) except for onnx-cpu that defaults to 1. - The onnx-dml package now includes a
directml.dll
installation script. - Some users experienced memory issues with onnx-dml, so the defaults were changed. This may affect performance, in which case you can use the
steps=8
backend option to get the old behavior. - The Python bindings are available as a package, see the README for instructions.
- Revised 'simple' time manager.
- A new spinlock implementation (selected with
--search-spin-backoff
) to help with many cpu threads (e.g. 128 threads), obviously for cpu backends only. - Fixes for contempt with infinite search/pondering and for the wdl display when pondering.
- Some assorted fixes and code cleanups.