Skip to content

Illegal instruction (core dumped) : PyTorch 2.0 on Raspberry Pi 4.0 8gb  #97226

@P-Blackburn

Description

@P-Blackburn

🐛 Describe the bug

Virgin install on Raspberry Pi 4.0 8gb

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
python3 -c "import torch;print(torch.__version__)"

results in:
Illegal instruction. and a core dump (on Ubuntu) and fails on the basic 64 Raspberry Pi Debian based OS...

HOWEVER:

Ignoring the installation instructions on https://pytorch.org/, and instead installing with:

pip3 install https://download.pytorch.org/whl/torch-2.0.0-cp310-cp310-manylinux2014_aarch64.whl

results in version of torch 2.0.0 that will work on the Raspberry Pi 4

Versions

executing:

wget https://raw.githubusercontent.com/pytorch/pytorch/master/torch/utils/collect_env.py
# For security purposes, please check the contents of collect_env.py before running it.
python collect_env.py

also results in Illegal instruction

(further - uninstalling torch 2.0.0 and attempting to install 1.13.1 per the instructions on https://pytorch.org/get-started/previous-versions/ i.e.

pip install torch==1.13.1+cpu torchvision==0.14.1+cpu torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cpu

results in

ERROR: Could not find a version that satisfies the requirement torch==1.13.1+cpu
ERROR: No matching distribution found for torch==1.13.1+cpu

that said an install of the form:

pip install torch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cpu

works a treat and

python3 -c "import torch;print(torch.__version__);print(torch.rand(3))"

returns what is expected:

1.13.1
tensor([0.1033, 0.6867, 0.4403])

python collect_env.py against the 1.13.1 works and returns:

Collecting environment information...
PyTorch version: 1.13.1
Is debug build: False
CUDA used to build PyTorch: None
ROCM used to build PyTorch: N/A

OS: Debian GNU/Linux 11 (bullseye) (aarch64)
GCC version: (Debian 10.2.1-6) 10.2.1 20210110
Clang version: Could not collect
CMake version: Could not collect
Libc version: glibc-2.31

Python version: 3.9.2 (default, Feb 28 2021, 17:03:44) [GCC 10.2.1 20210110] (64-bit runtime)
Python platform: Linux-6.1.19-v8+-aarch64-with-glibc2.31
Is CUDA available: False
CUDA runtime version: No CUDA
CUDA_MODULE_LOADING set to: N/A
GPU models and configuration: No CUDA
Nvidia driver version: No CUDA
cuDNN version: No CUDA
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available: True

CPU:
Architecture: aarch64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 1
Vendor ID: ARM
Model: 3
Model name: Cortex-A72
Stepping: r0p3
CPU max MHz: 1800.0000
CPU min MHz: 600.0000
BogoMIPS: 108.00
L1d cache: 128 KiB
L1i cache: 192 KiB
L2 cache: 1 MiB
Vulnerability Itlb multihit: Not affected
Vulnerability L1tf: Not affected
Vulnerability Mds: Not affected
Vulnerability Meltdown: Not affected
Vulnerability Mmio stale data: Not affected
Vulnerability Retbleed: Not affected
Vulnerability Spec store bypass: Vulnerable
Vulnerability Spectre v1: Mitigation; __user pointer sanitization
Vulnerability Spectre v2: Vulnerable
Vulnerability Srbds: Not affected
Vulnerability Tsx async abort: Not affected
Flags: fp asimd evtstrm crc32 cpuid

Versions of relevant libraries:
[pip3] numpy==1.19.5
[pip3] torch==1.13.1
[pip3] torchaudio==0.13.1
[pip3] torchvision==0.14.1
[conda] Could not collect

cc @ezyang @seemethere @malfet

Metadata

Metadata

Assignees

No one assigned

    Labels

    module: armRelated to ARM architectures builds of PyTorch. Includes Apple M1module: binariesAnything related to official binaries that we release to userstriage reviewtriagedThis issue has been looked at a team member, and triaged and prioritized into an appropriate module

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions