Fishtest uses fastchess, a command-line interface for managing chess games.
Supported Platforms
Operating System | CPU | Workflow |
---|---|---|
Linux | x86_64, x86_32 | linux |
Linux | aarch64, armv7 | arm |
macOS | x86_64, arm64 | macos |
Windows: WSL | x86_64 | linux |
Windows: MSYS2, Cygwin | x86_64, x86_32 | windows |
Windows | x86_64, x86_32 | windows |
To run fastchess
in a way equivalent to fishtest use (linux example below):
./fastchess -repeat -rounds 10000 -games 2 \
-resign movecount=3 score=600 -draw movenumber=34 movecount=8 score=20 \
-concurrency 8 -openings file=UHO_4060_v3.epd format=epd order=random plies=16 \
-engine name=base cmd=stockfish.base option.EvalFile=/home/user/nn-ad9b42354671.nnue option."Use NNUE=true" \
-engine name=test cmd=stockfish.test option.EvalFile=/home/user/nn-ad9b42354671.nnue option."Use NNUE=true" \
-ratinginterval 1 -each tc=10.0+0.1 proto=uci option.Threads=1 -pgnout result.pgn
The book UHO_4060_v3.epd
can be downloaded from the books repo. The EvalFile
is specific to the binary, can be downloaded from the network server, and must be specified with the full path. Look at ./fastchess --help
for more options.
In certain WSL2 workers, fastchess will encounter a lot of time losses, this is most likely due to a bugged patch for WSL2 that caused it be non-responsive in some systems, details of the issue can be found here. The temporary fix for this is by downgrading the WSL2 kernel to an older stable version. The process for doing this is simple: Open %USERPROFILE%/.wslconfig
or C:\Users\UserName/.wslconfig
and add [wsl2] kernel=C:\\Path\\To\\Kernel\\bzImage-5.4.0-microsoft-standard-WSL2
. The kernel build can be downloaded here.