Hello,
I’m getting different results for a Conv2D operation on ARM and x86_64 devices. Basically, the output tensors are identical in some parts, but have major blocks of data different in other parts. A quick view of the differences I got: torch_nn_functional_conv2d_problem/difference.png at main · octavianmm/torch_nn_functional_conv2d_problem · GitHub
A minimal working example that replicates this problem can be found here: GitHub - octavianmm/torch_nn_functional_conv2d_problem: Different output on ARM and x86_64 architectures for torch.nn.functional.conv2d
Also, the repo contains the two tensors obtained on ARM and Intel platforms using the same code, so the differences can be easily inspected.
I’ve discovered this problem when debugging why the same CNN works as expected in inference on x86_64 machines, but gives bad results (always predicting the same class) on ARM devices.