Alexandria 3.5.0
This release was originally planned to be Alexandria 4.0, however i decided to go on a temporary hiatus and while the engine still falls short of the elo mark i had set for Alexandria 4.0 it still has made significant progress compared to 3.1.0.
This release is therefore meant to act as a stopgap between 3.1.0 and 4.0 (if that ever comes out).
Compared to Alexandria 3.1.0, Alexandria 3.5.0 features a greatly improved search and experimental multithreaded search support (tested when newly implemented with up to 16 cores but never again since).
As far as elo progress goes:
Using 4moves-noob.epd
STC
ELO | 88.53 +- 9.96 (95%)
CONF | 10.0+0.10s Threads=1 Hash=16MB
GAMES | N: 1728 W: 547 L: 116 D: 1065
LTC
ELO | 118.93 +- 15.24 (95%)
CONF | 60.0+0.60s Threads=1 Hash=16MB
GAMES | N: 792 W: 295 L: 34 D: 463
This is also the first version of Alexandria that comes into the usual 3 flavours (modern, avx2, bmi2) everyone knows and love, big thanks to Disservin for the makefile that made this possible.
What's Changed
- Lazy SMP by @PGG106 in #86
- Improve and modernize uci support by @PGG106 in #91
- Reduce checks for time running out to once every 1024 nodes by @PGG106 in #92
- Improve memory usage, add some comments, fix movetime uci command by @PGG106 in #93
- Move most of the allocations on the heap by @PGG106 in #95
- Rework search stack by @PGG106 in #96
- Rework history heuristic by @PGG106 in #97
- change nmp to fail soft by @PGG106 in #98
- Final tweak to search output pretty_print by @PGG106 in #102
- avoid perft crashing when called with a depth of 1 by @PGG106 in #105
- Rewrite LMR with a more conventional approach by @PGG106 in #109
- Make nmp more aggressive by @PGG106 in #110
- Introduce continuation history by @PGG106 in #111
- Store static eval in the TT by @PGG106 in #114
- Simplify TT exact flag in Qsearch by @PGG106 in #115
- Avoid LMR dropping into Qsearch or extending by @PGG106 in #117
- Full multi-threaded datagen implementation by @PGG106 in #119
- fix movepicker by @PGG106 in #127
Full Changelog: v3.1.0...v3.5.0