- You want the least complicated Windows GPU path.
- You are testing compatibility.
- You do not want to install CUDA and TensorRT.
- You are using an ONNX model.
- You have an NVIDIA GPU.
- CUDA Toolkit and TensorRT are installed.
- You want the highest-performance backend.
- You are using a TensorRT
.enginemodel, or you have an.onnxready for first-time engine generation.
Check these first:
backend = DML
ai_model = your_model.onnx
confidence_threshold = 0.10
class_player = 0
class_head = 1Common causes:
- The selected model is a TensorRT
.engineinstead of.onnx. confidence_thresholdis too high for the model.- The model class IDs do not match
class_playerandclass_head. dml_device_idpoints to the wrong GPU.- The capture source is not actually showing the target content.
Start by checking which features force CPU-readable frames:
- Debug/preview window:
show_window = true. - Data collection.
- Screenshots.
- Any feature that needs pixels on the CPU for display or saving.
For the current CUDA path, the recommended FOV limiter is:
circle_fov_enabled = trueIf the spike disappears when the GUI or overlay is open, compare the capture diagnostics in both states. The GUI/preview can change whether the app requests CPU copies, which can make the runtime path different from the closed-GUI path.
Related docs: