jenston nano+conda+pytorch的部署办法
本文章参考以下网址的安装资料:
PyTorch for Jetson - Jetson & Embedded Systems / 公告 - NVIDIA 开发者论坛 --- PyTorch for Jetson - Jetson & Embedded Systems / Announcements - NVIDIA Developer Forums
在nano上安装pytorch,要先确定nano的jetpack版本,不同版本对应不同的pytoch版本。
我的nano是jetpack==4.6.1,在此我选择pytorch1.8.0版本。
点击此处即可下载pytorch。下载后把这个安装包放到用户跟目录下。
先激活conda环境:
conda activate envname
然后我们先安装一些依赖包:
sudo apt-get install python3-pip libopenblas-base libopenmpi-dev libomp-dev
pip3 install 'Cython<3'
然后我们安装pytorch:
pip3 install numpy torch-1.8.0-cp36-cp36m-linux_aarch64.whl
注意:若有illegal instruction(cpre dumped)报错,参考下方说明。
报错解决办法:
Jetson Nano上使用的是ARMv8架构,而有些软件可能会默认使用其他架构进行编译。
在这种情况下,可以通过设置环境变量来指定使用的CPU架构。在~/.bashrc文件末尾加入
export OPENBLAS_CORETYPE=ARMV8
然后 source ./.barshrc
然后根据你安装的 PyTorch 版本选择要下载的 torchvision 版本,这里我要下载0.9.0版本。
大家可以直接访问github进行下载
下载完成后把压缩包解压,并重命名以下文件夹的名字为torchvision
然后安装一些依赖包:
sudo apt-get install libjpeg-dev zlib1g-dev libpython3-dev libopenblas-dev libavcodec-dev libavformat-dev libswscale-dev
pip install 'pillow<7'
然后我们进入torchvision文件夹下进行安装:
cd torchvision
export BUILD_VERSION=0.9.0
python3 setup.py install --user(注意:此处我们要把torchvision安装到conda环境里面去,不要加“--user”)
到此就安装完成了。
可以运行下方命令进行验证.
import torch
print(torch.__version__)
print('CUDA available: ' + str(torch.cuda.is_available()))
print('cuDNN version: ' + str(torch.backends.cudnn.version()))
a = torch.cuda.FloatTensor(2).zero_()
print('Tensor a = ' + str(a))
b = torch.randn(2).cuda()
print('Tensor b = ' + str(b))
c = a + b
print('Tensor c = ' + str(c))
import torchvision
print(torchvision.__version__)