The GitHub Actions job "CI" on tvm.git/main has succeeded. Run started by GitHub user tlopex (triggered by tlopex).
Head commit for run: 7356265096cba7196673b09f90b023e600171452 / Vic Wen <[email protected]> [Fix][Relax][ONNX] Cast BatchNorm params to input dtype (#19979) Fixes #19977. ONNX `BatchNormalization` allows the input/output tensor dtype, scale/bias dtype, and mean/variance dtype to be separate floating-point type parameters. For example, a valid ONNX model may use `float16` data with `float32` gamma, beta, mean, and variance tensors. The Relax `batch_norm` operator currently requires all five input tensors to have the same dtype. The ONNX frontend previously forwarded the ONNX inputs directly to `relax.nn.batch_norm`, causing import to fail during normalization for mixed-dtype ONNX models. This patch casts the ONNX BatchNormalization parameter tensors (`scale`, `bias`, `mean`, and `var`) to the data tensor dtype before calling Relax `batch_norm`. This preserves the ONNX output dtype, which follows the input data dtype, while keeping the fix localized to the frontend compatibility layer. The regression test builds a minimal ONNX BatchNormalization graph with `float16` data and `float32` parameters, imports it through the Relax ONNX frontend, and checks that the generated Relax `batch_norm` call receives same-dtype inputs. Verification: - `python -m pytest tests/python/relax/test_frontend_onnx.py::test_batch_norm_mixed_dtype_params tests/python/relax/test_frontend_onnx.py::test_batch_norm_defaults_to_inference_mode -q` Signed-off-by: viiccwen <[email protected]> Report URL: https://github.com/apache/tvm/actions/runs/29143587883 With regards, GitHub Actions via GitBox --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
