microsoft / microsoft/onnxruntime
[Performance] Missing CUDA Kernal for Pad, MaxPool, ConvTranspose opset 19-23
- Dominant language
- C++
- Stars
- 21.9k
- Forks
- 4.2k
- Avg merge
- 4d 11h
- Merged PRs (30d)
- 184
Description
### Describe the issue
Starting Opset 19 I have this missing cuda kernel
```
[I:onnxruntime:, cuda_execution_provider.cc:2922 GetCapability] CUDA kernel not found in registries for Op type: Pad node name: node_pad_3
```
And starting opset 22 I have both two more warning
```
[I:onnxruntime:, cuda_execution_provider.cc:2922 GetCapability] CUDA kernel not found in registries for Op type: MaxPool node name: node_max_pool2d_2
[I:onnxruntime:, cuda_execution_provider.cc:2922 GetCapability] CUDA kernel not found in registries for Op type: ConvTranspose node name: node_convolution_1
```
I don't know If there much difference introduced by Pad op19+ and MaxPool, ConvTranspose op23+ but it would be much appreciated to have kernel for thoses Ops
This is like https://github.com/microsoft/onnxruntime/pull/26075
### To reproduce
NA
### Urgency
_No response_
### Platform
Linux
### OS Version
Ubuntu 24.04
### ONNX Runtime Installation
Released Package
### ONNX Runtime Version or Commit ID
1.23.1
### ONNX Runtime API
Python
### Architecture
X64
### Execution Provider
CUDA
### Execution Provider Library Version
CUDA 12.9
### Model File
_No response_
### Is this a quantized model?
No
Contributor guide
Research direction
Start at cuda_execution_provider.cc:2922 and trace the CUDA kernel registries for Pad, MaxPool, and ConvTranspose. Compare the relevant opset 19–23 operator definitions and existing kernel tests; done means the required kernels are registered and the reported warnings no longer occur for those opsets.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, python
- Domain
- machine-learning, performance
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100