Build instructions - QueensGambit/CrazyAra GitHub Wiki
CrazyAra can be build in different modes:
MODE_CRAZYHOUSE: Build with crazyhouse only support (default)MODE_CHESS: Build with chess + chess960 only supportMODE_LICHESS: Build with lichess variants supportMODE_POMMERMAN: Build with Pommerman supportMODE_OPEN_SPIEL: Build with OpenSpiel game interface support.
and different neural network inference back-ends:
BACKEND_TENSORRT: Build with TensorRT back-end (default)BACKEND_MXNET: Build with MXNet backend (Blas/IntelMKL/CUDA/TensorRT) supportBACKEND_TORCH: Build with Torch backend (CPU/GPU) supportBACKEND_OPEN_VINO: Build with OpenVino backend CPU support
Only one of these mode can be active at a time with the exception that BACKEND_MXNET and BACKEND_TENSORRT can both be ON at a time.
By default the native TensorRT back-end without MXNet is used.
The CMake option USE_RL allows building the executable with reinforcement learning support and requires additional dependencies for exporting the generated data set.
Custom MCTS-Build options:
| Build flag | Description |
|---|---|
MCTS_STORE_STATES |
Allows storing the states within the nodes. This is highly memory consuming but can be beneficial for environments with a high do_action() runtime cost and either low memory consumption or low total number of nodes in the search tree. |
MCTS_SINGLE_PLAYER |
The MCTS is only computed for a single player. The value won't be negated during back-propagation. |
MCTS_TB_SUPPORT |
The MCTS uses tablebase support during search. |
For all options, please refer to CMakeLists.txt.
This guide is structured into three parts and is available for Linux, Mac and Windows.