FunnyWii
FunnyWii
Published on 2023-06-25 / 95 Visits
0
0

Jetson - ARM架构下的 torch 和 torchvision 的安装 (支持CUDA)

写在前面

ARM架构下的 torch 安装比较烦人,不是麻烦,而是烦人。
网络上大部分教程虽然写着“Jetson的torch安装”,不过基本都是用官方stable的whl安装,这些安装本身没有什么问题,但是官方ARM架构的torch并不支持 CUDA,torchvision 亦如是。
这个方法也并不是我原创,如果你碰巧没有找到正确的安装方法但是看到了这篇文章,希望能够节约你的生命。

Doesn't work

XINFINFZ 在文章 nvidia jetson nano如何安装cuda版的pytorch_jetson pytorch cuda-CSDN博客 中使用别人预编译好的torch轮子: Qengineering/PyTorch-Jetson-Nano: PyTorch installation wheels for Jetson Nano (github.com) 在页面中能看到操作系统和对应的Torch/Vision版本,轮子需要Google Drive下载,我用 pip在conda虚拟环境中安装后,出现了不能调用 CUDA 的问题。

他也提到了自行编译的方法,我没试,不过理论上是可行的,因为下面的方法就需要自行编译。

It works

jupiter 在博客 Jetson 系列开发板(NX/AGX /Nano)搭建pytorch-gpu环境 - jupiter's blog (inat.top) 中的方法则是有效的。要注意的是:Torch 和Torchvision必须都是CUDA版本的才可以,而且版本号也需要匹配,即vision比torch大一个小版本号。

我安装的是Torch 1.13.0和Torchvision 0.14.0。

GPU版本的Torch安装 PyTorch for Jetson - Jetson & Embedded Systems / Announcements - NVIDIA Developer Forums 这是NVIDIA官方提供的轮子,不过只有Torch而没有vision的。

因此我们需要自行编译Torchvision:

git clone https://github.com/pytorch/vision.git vision-0.14.0
cd vision-0.14.0
export BUILD_VERSION=0.14.0
python setup.py install

等待install完成后,Torchvision即可使用。
测试:

(base) funnywii@funnywii-XPS-4060Ti:~$ python
Python 3.10.9 (main, Mar  1 2023, 18:23:06) [GCC 11.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> torch.cuda.is_available()
True
>>> 

参考文章

[1] https://blog.inat.top/archives/425/comment-page-1#comment-51
[2] https://blog.csdn.net/weixin_43945848/article/details/127122522


Comment