torch2trt icon indicating copy to clipboard operation
torch2trt copied to clipboard

Inconsistent inference results with AdaptiveAvgPool2d operator

Open Thrsu opened this issue 1 year ago • 0 comments

Description:

I'm experiencing a discrepancy between the inference results of my PyTorch model and the TensorRT model obtained by converting it using the torch2trt tool.

Reproduce

This can be reproduced by the following script:

from torch2trt import torch2trt
import torch
from torch.nn import Module

model = torch.nn.AdaptiveAvgPool2d(3,).cuda()
input_data = torch.randn([1, 3, 5, 6], dtype=torch.float32).cuda()
model_trt = torch2trt(model, [input_data])
y = model(input_data)
y_trt = model_trt(input_data)

# check the output against PyTorch
print(torch.max(torch.abs(y - y_trt)))

The error message is below:

Traceback (most recent call last):
  ...
    print(torch.max(torch.abs(y - y_trt)))
RuntimeError: The size of tensor a (3) must match the size of tensor b (5) at non-singleton dimension 2
 

Environment

  • torch: 1.11.0
  • torch2trt: 0.4.0
  • tensorrt: 8.6.1.6

Thrsu avatar Nov 24 '23 05:11 Thrsu