Without a valid MIGraphX cache dir, ONNX Runtime's MIGraphX EP reads an
uninitialized cache path and crashes on the first query rather than just
recompiling on every restart -- confirmed by hand while verifying the rocm
backend. Previously commented out as an opt-in perf tweak; it's actually
required for the rocm backend to work at all, so bakery-installed systems
need it set by default. No-op for cpu/npu/cuda backends.
Version bump: breadmill 0.2.1 -> 0.2.2.
ROCm silently fell back to CPU: the code targeted ONNX Runtime's classic
ROCMExecutionProvider, but distro ROCm-enabled ONNX Runtime builds (e.g.
Arch's onnxruntime-rocm) are commonly compiled with --use_migraphx instead,
and registration failures were invisible since breadmill never installed a
tracing subscriber. Switches the rocm feature to target MIGraphX, adds a
default tracing subscriber so EP registration success/failure is always
visible, and fixes a real crash where MIGraphX's output sequence padding
could index the attention mask out of bounds during mean-pooling.
Also adds a CUDA backend (--cuda / backend = "cuda") mirroring the same
ort execution-provider pattern, for NVIDIA hardware.
Version bump: 0.1.0 -> 0.2.0.