Outside CUDA, the driver, PyTorch, the Triton compiler and the serving engine are tightly coupled. A point release in any of them can change kernel selection and with it the numbers the model produces.
vLLM issue #36337 is a public example: a 4-bit MoE model on four AMD MI350X cards under ROCm 7.2 loaded normally, generated at 7–9 tokens per second, and produced incoherent text. The suspected cause was a change between two ROCm point releases in how packed 4-bit weights were dequantized. Nothing crashed, so a load check would have passed it.
- driver
- rocm 7.2.x
- framework
- torch 2.10
- compiler
- triton 3.6
- engine
- vllm 0.25
Recommendation. Pin all four per SKU, move them together, and gate every image on an output comparison against reference hardware, not on whether the model loads.
Source: github.com/vllm-project/vllm/issues/36337. The versions above illustrate a pin; they are not a recommendation.