Giter VIP home page Giter VIP logo

fishtest's Introduction

Overview

Fishtest is a distributed task queue for testing chess engines. The main instance for Stockfish is http://tests.stockfishchess.org

It is currently being used for testing changes on Stockfish, using tens of thousands of games, both on Linux and Windows. The following setup describes a step-by-step installation for a machine that will run test matches (a worker).

Setup Python on Windows

On Windows you will need to install Python 2.7.x for x86 (not 3.x series and not 64 bit) from http://www.python.org/ftp/python/2.7.4/python-2.7.4.msi

In case something is not clear please read windows-step-by-step-installation.txt or view https://www.youtube.com/watch?v=jePuj9-T4oU

Setup fishtest

You can download fishtest directly from Github:

https://github.com/glinscott/fishtest/archive/master.zip

or, in case you have a git installation, you can clone it.

git clone https://github.com/glinscott/fishtest.git

Sign up

Create your username/password at http://tests.stockfishchess.org/signup

Launching the worker

To launch the worker open a console window in fishtest/worker directory and run the following command (after changing concurrency to the correct value for your system, see below), providing username and password you've been given.

python worker.py --concurrency 3 username password

or, after the first access, a simple

python worker.py

Option concurrency refers to the number of available cores in your system (not including Hyperthreaded cores!), leaving one core for the OS. For example, on my 4 core machine, I use --concurrency 3.

On Linux, you can use the nohup command to run the worker as a background task.

nohup python worker.py &

Override default make command

Once launched, fishtest will automatically connect to host, download the book, the cutechess-cli game manager and the engine sources that will be compiled according to the type of worker platform. If default make command is not suitable for you, for instance if you need to use some other compiler than gcc/mingw, then you can create a custom_make.txt file in fishtest/worker directory, containing a single line command that fishtest will run to compile the sources.

Running the website

This is only if you wish to run your own testing environment (ie. you are testing changes on another engine). As a pre-requisite, the website needs a mongodb instance. By default it assumes there is one running on localhost. You can set FISHTEST_HOST environment variable to connect to a different host. To launch a development version of the site, open a console window in fishtest/fishtest directory and do:

sudo python setup.py develop
./start.sh

fishtest's People

Contributors

cuddlestmonkey avatar glinscott avatar jromang avatar kamyarkaviani avatar lucasart avatar mcostalba avatar stefano80 avatar zardav avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.