The inference of [ Deconvolution + Other Operations ], for example [ Deconvolution + Convolution ] in tensorrt is slower than mxnet

Hi All,
We want to convert some models trained by mxnet1.5.0 to tensorrt7.0 through onnx-tensorrt(7.0) to speed up the inferece. But there are some questions about deconvolution. If there are other operations follow deconvolution, for example convolution, the inference of the model may has slower speed and lager gpu memory. The comparisons between them are as follows.

  1. deconv+conv
    mxnet speed: 21.4385s/100 gpu_memory: 1745M
    tensorrt speed: 39.9927s/100 gpu_memory: 1631M

  2. deconv+activation+conv
    mxnet speed: 22.1862s/100 gpu_memory: 1745M
    tensorrt speed: 41.0732s/100 gpu_memory: 2653M

  3. deconv+slice_axis
    mxnet speed: 20.6279s/100 gpu_memory: 1745M
    tensorrt speed: 38.6454s/100 gpu_memory: 1627M

  4. upsampling+conv
    mxnet speed: 67.3117s/1000 gpu_memory: 1741M
    tensorrt speed: 56.8737s/1000 gpu_memory: 1625M

We think it is strange thant the performance in tensorrt cannot be better than mxnet.

Any help is appreciated. Thank You!


Can you provide the following information so we can better help?

Provide details on the platforms you are using:
o Linux distro and version
o GPU type
o Nvidia driver version
o CUDA version
o CUDNN version
o Python version [if using python]
o Tensorflow and PyTorch version
o TensorRT version

Also, please share the scripts / model file to reproduce the issue.

The details are:

  1. ubuntu18.04
  2. GTX 1080
  3. driver version: 430.35
  4. cuda vesion: 10.0
  5. cudnn version: 7.6
  6. python version: 3.6
  7. Tensorflow and PyTorch are not used. We use mxnet1.5.0, onnx1.2.1, onnx-tensorrt 7.0
  8. tensorrt version: 7.0

Looking forward for your reply!

Also, please share the scripts / model file to reproduce the issue.

I meet a similar problem, the deconvolutionNd(3d) in TRT is much slower than conv_transpose3d in pytorch.