onnxruntime
ee5158e7 - Fill CUDA Cast operator opset gap: extend registration from opset 23 to 25 (#27744)

Commit
82 days ago
Fill CUDA Cast operator opset gap: extend registration from opset 23 to 25 (#27744) ### Description Extends CUDA Cast kernel registration to cover opset 25 (latest ONNX spec). The existing non-versioned opset 23 registration is capped to VERSIONED (23, 24), and a new non-versioned opset 25 registration is added for all type specializations. **`cast_op.cc`**: - `REGISTER_KERNEL_TYPED(T)`: opset 23 → VERSIONED (23, 24), added non-versioned opset 25 - Renamed `REGISTER_KERNEL_TYPED_23` → `REGISTER_KERNEL_TYPED_23_TO_24` (VERSIONED) - Added `REGISTER_KERNEL_TYPED_25` macro (non-versioned) - Renamed `SPECIALIZE_IMPL_19_TO_23` → `SPECIALIZE_IMPL_19_TO_25`, covering Float8 types through opset 25 - Updated Float4E2M1x2 registration to use new versioned/non-versioned macros **`cuda_execution_provider.cc`**: - Forward declarations: all opset 23 Cast entries → VERSIONED (23, 24), added opset 25 non-versioned entries (all 16 types: 13 standard + 2 Float8 + 1 Float4) - `BuildKernelCreateInfo`: same pattern — capped 23 to (23, 24), added opset 25 block ### Motivation and Context CUDA Cast operator was registered up to opset 23, but ONNX spec defines Cast through opset 25. This gap can cause kernel lookup failures when running models exported at opset 25. Part of the broader CUDA opset gap-filling effort tracked in #27729. --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: tianleiwu <30328909+tianleiwu@users.noreply.github.com> Co-authored-by: Tianlei Wu <tlwu@microsoft.com> Co-authored-by: Copilot <copilot@github.com>
Author
Parents
Loading