Repository: pytorch
Issue: Possibly alignment issues on NEON vectorized ops, Jetson platforms
Labels: triaged,module: arm,module: jetson

## 🐛 Bug

I am seeing a few failed vectorized ops on [Jetson Xavier NX](https://developer.nvidia.com/embedded/jetson-xavier-nx) (aarch64) platform related to neon [torch_cpu ops](https://github.com/pytorch/pytorch/blob/master/aten/src/ATen/cpu/vec/vec256/vec256_float_neon.h). 


## To Reproduce
A small repro would be
```cpp
import torch
import numpy

for _ in range(10):
    a = torch.rand([4,4])*10-5
    b = torch.rand([4,4])*10-5
    c = torch.copysign(a,b)

    a_np = a.numpy()
    b_np = b.numpy()
    c_np = numpy.copysign(a_np,b_np)
    c_np_t = torch.from_numpy(c_np)

    assert c.allclose(c_np_t),f"\n{a}\n{b}\n{c}\n{c_np_t}\n{torch.eq(c,c_np_t)}"
```

On the platform building `master @ a4278203504a34886d84a9e53dce8b197deeccd1`, the above repro gives

```
AssertionError: 
tensor([[ 3.6207, -2.1751,  3.1133, -0.3334],
        [ 2.0804,  4.8790, -1.3593, -4.1963],
        [ 3.2399, -1.7056,  4.3192, -2.2623],
        [ 3.2728, -1.8290,  0.7332,  4.0259]])
tensor([[ 1.6301,  3.3234,  3.7547,  3.9161],
        [ 1.9801, -2.7351,  1.3723,  1.3181],
        [ 0.2420,  2.4488, -0.0387, -2.0544],
        [-2.5627, -4.2426,  3.6621,  1.1281]])
tensor([[ 3.6207,  2.1751,  3.1133,  0.3334],
        [ 2.0804,  4.8790, -1.3593, -4.1963],
        [ 3.2399,  1.7056, -4.3192, -2.2623],
        [ 2.0804, -4.8790,  1.3593,  4.1963]])
tensor([[ 3.6207,  2.1751,  3.1133,  0.3334],
        [ 2.0804, -4.8790,  1.3593,  4.1963],
        [ 3.2399,  1.7056, -4.3192, -2.2623],
        [-3.2728, -1.8290,  0.7332,  4.0259]])
tensor([[ True,  True,  True,  True],
        [ True, False, False, False],
        [ True,  True,  True,  True],
        [False, False, False, False]])

```


This doesn't happen to 1D tensors but only to >=2D ones. 

Disabling [this header](https://github.com/pytorch/pytorch/blob/master/aten/src/ATen/cpu/vec/vec256/vec256.h#L11) would make it go away.


<!-- If you have a code sample, error messages, stack traces, please provide it here as well -->

<!-- A clear and concise description of what you expected to happen. -->

## Environment
```
Collecting environment information...
PyTorch version: 1.9.0a0+gita427820
Is debug build: False
CUDA used to build PyTorch: 10.2
ROCM used to build PyTorch: N/A

OS: Ubuntu 18.04.5 LTS (aarch64)
GCC version: (Ubuntu/Linaro 7.5.0-3ubuntu1~18.04) 7.5.0
Clang version: Could not collect
CMake version: version 3.20.3
Libc version: glibc-2.27

Python version: 3.8 (64-bit runtime)
Python platform: Linux-4.9.201-tegra-aarch64-with-glibc2.17
Is CUDA available: False
CUDA runtime version: 10.2.89
GPU models and configuration: Could not collect
Nvidia driver version: Could not collect
cuDNN version: Could not collect
HIP runtime version: N/A
MIOpen runtime version: N/A

Versions of relevant libraries:
[pip3] numpy==1.20.3
[pip3] torch==1.9.0a0+gita427820
[conda] numpy                     1.20.3           py38h899f778_1    conda-forge
[conda] torch                     1.9.0a0+gita427820          pypi_0    pypi
```

I would really appreciate if someone could share some insight into this issue, or if similar issue happens on other aarch64 platforms. 

cc @ezyang @gchanan @zou3519 @bdhirsh @jbschlosser @anjali411 @Varal7 @malfet