Katago: Difference between revisions

imported>OmnipotentEntity
No edit summary
imported>OmnipotentEntity
Updated for 1.14.0
Line 2: Line 2:


There are several build options for Katago's derivation.  Katago can use either Eigen, OpenCL, CUDA, or TensorRT.  By default, it uses OpenCL.  To use a different backend override the `backend` attribute, allowed values are "eigen", "opencl", "cuda", and "tensorrt".
There are several build options for Katago's derivation.  Katago can use either Eigen, OpenCL, CUDA, or TensorRT.  By default, it uses OpenCL.  To use a different backend override the `backend` attribute, allowed values are "eigen", "opencl", "cuda", and "tensorrt".
TensorRT is currently suffering from a minor performance regression in v1.12.2, so it by default uses v1.12.1 instead.  You can override the version, and it should work if you'd rather use the newer tensorrt engine introduced in v1.12.2 that does not depend on cudnn.
OpenCL, on the other hand, is currently suffering from a performance regression in v1.12.1, and so you should use definitely use v1.12.2 instead if you're using the OpenCL backend.


For the eigen and cuda backends either version should be more or less functionally the same.
For the eigen and cuda backends either version should be more or less functionally the same.
Changing versions:
    katago.override {
      version = "1.12.1";
    }


Using CUDA:
Using CUDA:
Line 28: Line 18:
     katago.override {
     katago.override {
       backend = "eigen";
       backend = "eigen";
    }
Using TensorRT, first download the tensorrt redistributable installer from https://developer.nvidia.com/tensorrt and add it to your nix-store.
Note that you need an NVidia account (free) to do this.
    katago.override {
      backend = "tensorrt";
      enableTrtPlanCache = true; # Recommended to speed up booting, but uses additional disk space, so not recommended for contrib.
     }
     }