由于nano的arm64架构,所以用它进行深度学习配置部署时会与用普通电脑(x86)有所不同:
x86架构
x86架构是最常用的计算机架构之一,它是基于英特尔的8086处理器所设计的,后来又逐渐发展成x86-64架构,支持64位处理。x86架构主要用于个人计算机和服务器,它具有广泛的软件支持,流行的操作系统如Windows和Linux都可以在x86架构上运行。x86架构的处理器运行速度较快,但功耗较高。x86架构最初是为个人计算机设计的,后来逐渐成为服务器领域的主流架构之一。它主要用于桌面和笔记本电脑、服务器以及数据中心,因为它具有高性能和广泛的软件支持。目前,x86架构的处理器覆盖了从低功耗移动设备到高性能服务器的整个范围。其中,英特尔和AMD是x86架构处理器的主要制造商。
ARM架构
ARM架构是一种低功耗、高效能的处理器架构,主要用于移动设备、物联网设备和嵌入式设备。ARM架构的处理器较小且功耗较低,因此在移动设备上广泛使用,如智能手机和平板电脑。除了低功耗之外,ARM架构还支持多核处理、高效的功耗管理和可扩展性,因此它也在其他领域,如服务器、物联网设备和工业自动化设备中得到了广泛的应用。目前,ARM架构的处理器覆盖了从低功耗嵌入式设备到高性能服务器的整个范围。ARM公司本身不制造处理器,而是授权给其他公司进行制造,其中包括高通、三星、苹果等。
以下记录一下Jeston NANO配置并安装 torch 1.7.0 + torchvision 0.8.0
我的nano是已经配好了基本的CUDA,cuDNN,TensorRT的,如果你不确定自己的装好没有就在命令行输入 nvcc -V ,如果正常输出,说明CUDA路径配置成功,没配置好的话就先去配,这里不多说。直接将怎么配torch 1.7.0 + torchvision 0.8.1。
1. 版本选择
torch和torchvision的搭配是有讲究的,参考下图:
我是用jetson nano来做YOLO深度学习的,环境要求 torch>=1.7.0,所以选择torch 1.7.0 + torchvision 0.8.1,一定要注意你要用来实现的项目对各类部署版本的要求,我之前就下成了torch 1.6.0 + torchvision 0.7.0,后面卸载重下的时候又遇到了一些bug,浪费不少时间。
2.安装步骤
安装torch1.6
由于NANO是NANO架构torchvision和torch的下载与x86的不一致,torch下载链接
建议电脑下载拷过来jetson nano
先解决torch依赖问题
sudo apt-get update
sudo apt-get install python3-pip libopenblas-base libopenmpi-dev
sudo apt-get install libjpeg-dev zlib1g-dev
pip3 install Cython
pip3 install torch-1.7.0-cp36-cp36m-linux_aarch64.whl
验证torch
>>> import torch
>>> print(torch.__version__)
1.6.0
安装torchvision
torchvision githup地址:GitHub - pytorch/vision: Datasets, Transforms and Models specific to Computer Vision
# 安装一些必要的包
sudo apt-get install libjpeg-dev zlib1g-dev
# 下载torchvision
git clone -b v0.8.1 https://github.com/pytorch/vision torchvision
# 安装torchvision
cd torchvision
sudo python3 setup.py install
根据个人需求安装对应的版本
测试torchvision
import torchvision
print(torchvision.__version__)
安装pycuda,深度学习所需要的包就已经基本完成
pip3 install pycuda
温馨提示&可能遇到的问题
1. torch1.6的nano版只支持python3.6,请勿尝试其他python版本。
2.请勿修改python3优先级高于python2,之后会出现环境依赖的问题
3. 需要使用apt安装的包,请先安装好,后续修改环境配置时会出现问题。
4. 在安装完jupyter后若使用命令显示`command jupyter not found`,请将其加入环境变量,具体参考(安装jupyter后,使用时显示找不到命令(command not found))
先使用find -name jupyter,然后使用命令
sudo vim /etc/profile
添加如下代码
export PATH=$PATH:~/.local/bin
退出编辑
source /etc/profile//执行配置
5.安装torch过程中遇到缺少别的安装包,比如libmpi_cxx.so.20和libhwloc.so.5
可以到这个网站https://pkgs.org/去下载对应的安装包再进行安装即可
进入pkgs网站,右上角搜索缺少的库,选择操作系统对应的版本,点击进入下载和安装页面
进入到下载和安装页面
安装有两种方式
官网提出的使用apt-get安装
sudo apt-get install libopenmpi2
使用dpkg安装指令进行安装
dpkg -i libopenmpi2_2.1.1-8_arm64.deb
安装完之后,再次进行torch测试还会提示缺少别的包,操作如上。
文章参考:Jeston NANO配置并安装torch
Jetson nano安装Pytorch详解