Skip to content
dav1312 edited this page Feb 21, 2023 · 56 revisions

Welcome to Fishtest

Fishtest is a distributed task queue for testing chess engines through self playing. The main instance for testing the chess engine Stockfish is at this web page: https://tests.stockfishchess.org

How does Fishtest work?

Developers submit patches with new ideas and improvements, CPU contributors install a fishtest worker on their computers to play some chess games in the background to help the developers testing the patches.

The fishtest worker:

  • automatically connects to the server to download a chess opening book, the cutechess-cli chess game manager and the chess engine sources (both for the current Stockfish and for the patch with the new idea). The sources will be compiled according to the type of the worker platform.
  • starts a batch of games using cutechess-cli.
  • uploads the games results on the server.

The fishtest server:

  • manages the queue of the tests with customizable priorities.
  • computes several probabilistic values from the game results sent by the workers.
  • updates and publishes the results of ongoing tests.
  • knows how to stop tests when they are statistically significant and publishes the final tests results.

How to contribute to Stockfish/Fishtest ?

If you are a developer interested in chess, fork Stockfish and write some patches, following the instructions in Creating my first test to submit tests. Or you could contribute to improve the server itself (Fishtest) -- to test a patch locally on your computer simply follow Fishtest server setup. Developers should read these pages:

Even if you do not know programming yet, you can help the Stockfish developers to improve the chess engine by installing the Fishtest worker and let it play some games on your PC. Simply follow these instructions: