Releases: seniorfish/KataGo
Release list
KataGo ONNX Runtime backend (OpenVINO EP) for Intel GPU — v2
Prebuilt katago.exe with ONNX Runtime + OpenVINO 2026.2.1 execution provider.
~20% faster than v1 on transformer models due to a graph-pattern fix that enables OpenVINO RMSNorm kernel fusion (numStreams=2, 10 threads, 800 visits, 347.49 visits/s -> 416.52 visits/s).
Includes:
- katago.exe (64-bit, ONNX backend)
- OpenVINO 2026.2.1 runtime DLLs
- ONNX Runtime 1.29.0 DLLs
- gpu_optimized.cfg — preconfigured for Intel GPU with recommended settings
KataGo ONNX Runtime backend (OpenVINO EP) for Intel GPU — v1
KataGo — ONNX Runtime backend (OpenVINO EP) for Intel GPU
Windows x64 build of KataGo with a new ONNX Runtime neural-net backend, running inference on Intel GPU (or iGPU) via the OpenVINO execution provider. Built from a fork of lightvector/KataGo on top of v1.17.0.
katago.execompiled with-DUSE_BACKEND=ONNX, plus the full ONNX Runtime + OpenVINO runtime DLLs bundled so it runs standalone on an Intel GPU.- Git revision:
ff3c105fa717bfe0eb076bec8558537d94032689 - Built against ONNX Runtime 1.29 (self-compiled with
--use_openvino GPU) and OpenVINO 2026.2.
Quick start
- Place a KataGo
.bin.gzmodel next tokatago.exe(models: https://katagotraining.org/). - In
gtp_example.cfg(You can refer to the comments for more details.):onnxProvider = openvino onnxOpenVINODeviceType = GPU katago.exe gtp -config gtp_example.cfg -model <your_model>
Success log: ONNX backend: OpenVINO execution provider enabled, device_type=GPU and session created, inputs=3 outputs=5.
Performance
There are some newly added options in the config file that affect performance, see gtp_example.cfg for detail. Some test results are pasted below.
Device: Intel Arc B580
backend: opencl
model: b11c768h12nbt3tflrs-fson-silu.bin.gz
-visits 60
numSearchThreads = 2: 10 / 10 positions, visits/s = 14.61 nnEvals/s = 14.11 nnBatches/s = 14.06 avgBatchSize = 1.00 (41.7 secs) (EloDiff baseline)
numSearchThreads = 4: 10 / 10 positions, visits/s = 15.39 nnEvals/s = 15.12 nnBatches/s = 7.76 avgBatchSize = 1.95 (40.9 secs) (EloDiff -4)
numSearchThreads = 8: 10 / 10 positions, visits/s = 16.74 nnEvals/s = 16.72 nnBatches/s = 4.67 avgBatchSize = 3.58 (40.0 secs) (EloDiff -20)
backend: onnxruntime(openvino)
model: b11c768h12nbt3tflrs-fson-silu.bin.gz
config:
onnxOpenVINONumStreams = 2
onnxTransformerNHWC = true
numSearchThreads = 4: 10 / 10 positions, visits/s = 273.22 nnEvals/s = 216.37 nnBatches/s = 108.51 avgBatchSize = 1.99 (29.4 secs) (EloDiff baseline)
numSearchThreads = 8: 10 / 10 positions, visits/s = 362.81 nnEvals/s = 290.80 nnBatches/s = 73.26 avgBatchSize = 3.97 (22.2 secs) (EloDiff +87)
numSearchThreads = 12: 10 / 10 positions, visits/s = 394.78 nnEvals/s = 321.04 nnBatches/s = 54.35 avgBatchSize = 5.91 (20.5 secs) (EloDiff +102)
model: kata1-zhizi-b40c768nbt-s11472M-d5982M.bin.gz
numSearchThreads = 4: 10 / 10 positions, visits/s = 122.82 nnEvals/s = 96.05 nnBatches/s = 48.20 avgBatchSize = 1.99 (65.4 secs) (EloDiff baseline)
numSearchThreads = 8: 10 / 10 positions, visits/s = 156.49 nnEvals/s = 125.23 nnBatches/s = 31.55 avgBatchSize = 3.97 (51.6 secs) (EloDiff +62)
numSearchThreads = 12: 10 / 10 positions, visits/s = 169.99 nnEvals/s = 134.65 nnBatches/s = 22.75 avgBatchSize = 5.92 (47.7 secs) (EloDiff +66)
model: b11c768h12nbt3tflrs-fson-silu.bin.gz
config:
onnxOpenVINONumStreams = 1
onnxTransformerNHWC = true
numSearchThreads = 12: 10 / 10 positions, visits/s = 126.72 nnEvals/s = 103.04 nnBatches/s = 17.42 avgBatchSize = 5.91 (63.9 secs) (EloDiff baseline)
model: b11c768h12nbt3tflrs-fson-silu.bin.gz
config:
onnxOpenVINONumStreams = 2
onnxTransformerNHWC = false
numSearchThreads = 12: 10 / 10 positions, visits/s = 185.39 nnEvals/s = 150.18 nnBatches/s = 25.43 avgBatchSize = 5.91 (43.7 secs) (EloDiff baseline)
So onnxOpenVINONumStreams = 2,onnxTransformerNHWC = true performs best on my machine.
Requirements
- Windows 10/11 x64, Intel GPU (Arc / Iris Xe) with latest drivers.
Caveats
- This build only includes the OpenVINO execution provider. Switching
onnxProvidertocuda/tensorrt/migraphx/coremlrequires an ORT build with that provider. - Raw
.onnxmodel files are not supported; use KataGo.bin.gzmodels.
Licenses
- KataGo: see LICENSE in the source repo.
- ONNX Runtime: MIT — https://github.com/microsoft/onnxruntime
- OpenVINO: Apache 2.0 — https://github.com/openvinotoolkit/openvino
Provided as-is, without warranty.