Skip to content

Fishtest uses fastchess, a command-line interface for managing chess games.

Supported Platforms

Operating SystemCPU
Linuxx86_64, x86_32
Linuxaarch64, armv7
macOSx86_64, arm64
Windows: WSLx86_64
Windows: MSYS2, Cygwinx86_64, x86_32
Windowsx86_64, x86_32

To run fastchess in a way equivalent to fishtest use (linux example below):

./fastchess -recover -repeat -games 2 -rounds 10 -ratinginterval 1 -scoreinterval 1 -autosaveinterval 0\
            -report penta=true -pgnout results.pgn -site https://tests.stockfishchess.org/tests/view/678\
            -event Batch 153: master vs master -srand 5895699939700649196 -resign movecount=3 score=600\
            -draw movenumber=34 movecount=8 score=20 -variant standard -concurrency 3\
            -openings file=UHO_Lichess_4852_v1.epd format=epd order=random plies=16 start=15619\
            -engine name=New tc=1.0+0.01 cmd=./stockfish_new dir=. option.Hash=16\
             option.EvalFile=nn-1c0000000000.nnue option.EvalFileSmall=nn-37f18f62d772.nnue\
            -engine name=Base tc=1.0+0.01 cmd=./stockfish_base dir=. option.Hash=16\
             option.EvalFile=nn-1c0000000000.nnue option.EvalFileSmall=nn-37f18f62d772.nnue\
            -each proto=uci option.Threads=1 -pgnout result.pgn

The book UHO_Lichess_4852_v1.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.