Since you’re here...

We hope you will consider supporting us today. We need your support to continue to exist, because good entries are more and more work time. Every reader contribution, however big or small, is so valuable. Support "Chess Engines Diary" even a small amount– and it only takes a minute. Thank you.
============================== My email: jotes@go2.pl



Basilisk 1.20 - new version chess engine


Basilisk, a UCI chess engine written in C++23.
Estimated strength: ~2400 ELO (single-thread calibration against Stockfish; FIDE Master / International Master level).
Author: Miloslav Macůrek

Basilisk 1.20 what's new?
Basilisk 1.2.0 focuses on multi-threaded search and UCI robustness. The main upgrade is a persistent Lazy SMP search pool with shared TT access, improving NPS scaling with multiple cores while keeping the engine responsive to UCI control commands.

Highlights
Added Threads UCI option with max 1024
Added persistent Lazy SMP thread pool
Added shared root-move feedback between worker searches
Added staged MovePicker: TT move, tactical moves, then quiet moves
Added quiet-only legal move generation to avoid unnecessary full move generation
Added atomic compact transposition table storage for safer shared access
Improved UCI command handling with an engine command queue
Fixed go / isready / stop / quit race conditions
Updated version metadata, README, changelog, and release CI
Search And Performance
Multi-threaded search now uses a persistent thread pool instead of creating fresh search workers per command
Worker searches share the transposition table and root-move information
Capture ordering avoids eager SEE calls; SEE is now reserved for pruning and bad-capture reductions
bench [depth] now uses the current Threads setting and reports the active thread count
Correctness And Stability
Fixed color-blind pawn correction keys by adding color-aware pawn keys
Replaced unsafe TT pointer probing with copy-based probes
Added synchronized UCI output so info, readyok, bestmove, and bench output cannot interleave across threads
Improved ponderhit handling without restarting search state
Release CI now runs the full CTest suite before uploading binaries



Comments