关于CUDA的环境变量导入
jetson nano是原装了CUDA的,但是需要用户导入环境变量(导入相关的路径)才可以使用,只有环境变量导入成功后,方可在命令行使用 nvcc -V
在命令行输入 sudo gedit ~/.bashrc
(类似于文本编辑器,需要连接显示器,如果没有显示器,需要自行百度vim的方法来添加环境变量)
在最后添加这三行 (注意,输入变量时,是usr,不是user,linux小白当时差点没注意这点细节)
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda/bin:$PATH
保存后退出,执行 source ~/.bashrc,使得环境变量生效
在命令行输入 nvcc -V 如果正常输出,说明CUDA路径配置成功
torch使用GPU
import torch
from torchvision import transforms
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
print(torch.cuda.is_available())
print('device %s' % device)
net.to(device=device)
遇到问题:
在 python3.6.9下环境下安装pytorch1.6后,出现过以下问题:
1、AssertionError: Torch not compiled with CUDA enabled
2、UserWarning: Xavier with CUDA capability sm_72 is not compatible with the current PyTorch installation.The current PyTorch install supports CUDA capabilities sm_53.
3、Illegal instruction (core dumped)
第一个问题的解决方案:安装pytorch1.5.0,地址:点击下载
第二个问题的解决方案:算力与版本不匹配,还是安装pytorch1.5.0,地址:点击下载
第三个问题的解决方案:
sudo vim /etc/profile
最后一行添加:export OPENBLAS_CORETYPE=ARMV8
保存并且退出
生效:source /etc/profile
torch下载完成拷贝到NX后,进行安装,注意文件存放位置和执行命令的位置相一致,输入命令:
sudo pip3 install torch-1.5.0-cp36-cp36m-linux_aarch64.whl
torchvision安装
sudo apt-get install libjpeg-dev zlib1g-dev
git clone --branch v0.6.0 https://github.com/pytorch/vision torchvision
直接pip3下载是没有torchvision0.6以及0.7版本,需要git下载,然后编译安装。
cd进入到目录中,git命令下载时修改了文件名称,为torchvision(码云默认下载为vision,无修改)cd路径读者自行判断。
cd torchvision
sudo python3 setup.py install
安装Jetson-stats管理工具
使用Jetson Xavier NX的时候需要查看cpu 电源,gpu的使用 频率和调度等情况,简单的top 命令已经不能满足需求了,有一款软件 jetson-stats ,它相当于主机端使用nvidia-smi来查看显卡使用情况一样,可以完成NX板卡上述资源消耗的使用情况。
在pip配置好的情况下,直接在终端pip3安装
pip3 install jetson-stats
安装好后输入
jtop
查看NX开发套件的各项资源使用情况,按 q 结束退出
刷机预装组件版本检查
1、驱动版本:head -n 1 /etc/nv_tegra_release
2、内核版本:uname -r
3、操作系统:lsb_release -i -r
4、CUDA版本:nvcc -V
5、cuDNN版本:dpkg -l libcudnn8
6、opencv版本:dpkg -l libopencv
7、Tensorrt版本: dpkg -l tensorrt
换源
添加国内清华源,首先备份原本的source.list文件
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak #为防止误操作后无法恢复,先备份原文件sources.list
sudo gedit /etc/apt/sources.list
然后删除所有内容,复制下列内容到到sources.list后保存
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe
之后打开终端输入
sudo apt-get update
完成!
一定要注意处理器是aarch64架构的Ubuntu 18.04.2 LTS系统类型的,要使用与之匹配的源 。