onnxruntime
a12b611e - [ Cuda] ConvTranspose-22 (#27710)

Commit
186 days ago
[ Cuda] ConvTranspose-22 (#27710) ## Description This PR extends the CUDA `ConvTranspose` operator registration to support ONNX opset 22. The CUDA implementation already shares the same attribute and output-shape handling used by earlier supported opsets, so this change primarily exposes the existing kernel path for opset 22 and adds regression coverage to keep that path working. ## Summary of Changes ### CUDA Kernel Registration | File | Change | |------|--------| | `onnxruntime/core/providers/cuda/nn/conv_transpose.cc` | Split `ConvTranspose` kernel registration into `1-10`, `11-21`, and `22` so the CUDA kernel can be selected for opset 22. | | `onnxruntime/core/providers/cuda/cuda_execution_provider.cc` | Added matching provider-side kernel declarations and registry entries for `ConvTranspose(22)` on CUDA. | | `onnxruntime/core/providers/cuda/cuda_nhwc_kernels.cc` | Added matching NHWC CUDA declarations and registry entries for `ConvTranspose(22)`. | ### Test Coverage | File | Change | |------|--------| | `onnxruntime/test/providers/cpu/nn/conv_transpose_op_test.cc` | Added a CUDA-only opset 22 regression test that validates `ConvTranspose` with `output_shape`. | | `onnxruntime/test/providers/cuda/nhwc/conv_transpose_test.cc` | Updated existing NHWC comparison coverage to instantiate `ConvTranspose` at opset 22. | ## Testing - Built the touched translation units successfully with targeted `ninja` object builds: - `onnxruntime/core/providers/cuda/cuda_execution_provider.cc` - `onnxruntime/core/providers/cuda/cuda_nhwc_kernels.cc` - `onnxruntime/core/providers/cuda/nn/conv_transpose.cc` - `onnxruntime/test/providers/cpu/nn/conv_transpose_op_test.cc` - `onnxruntime/test/providers/cuda/nhwc/conv_transpose_test.cc` - Ran `git diff --check` to confirm the patch is formatting-clean. - A full `onnxruntime_test_all` / gtest runtime pass was not completed locally because the build tree regenerated and expanded into a broad rebuild; runtime verification of the new CUDA and NHWC tests should still be run in CI or a focused local test build. ## Motivation and Context Related issue: https://github.com/microsoft/onnxruntime/issues/26393 The ONNX `ConvTranspose-22` schema keeps the same core padding and output-shape semantics used by the earlier CUDA-supported opsets, but CUDA registration stopped at opset 11. That meant models using `ConvTranspose` at opset 22 could miss CUDA kernel assignment even though the implementation path was already compatible. This PR closes that gap by updating kernel registration and test coverage without changing the underlying CUDA compute logic. ## Checklist - [x] Tests added/updated - [ ] Documentation updated (if applicable) - [x] No breaking changes (or documented in description) - [ ] CI passes
Author
Parents
Loading