前提:系统烧录完成
1、安装jetpack组件(安装jetpack过程中会安装cuda、cudnn、TensorRT等)
cuDNN 安装路径: /usr/lib/aarch64-linux-gnu
CUDA安装路径: /usr/local/cuda
sudo apt update
sudo apt install nvidia-jetpack
2、安装jtop
sudo apt-get install python3-pip
sudo pip3 install -U pip
sudo pip3 install -U jetson-stats
终端输入“jtop”会看到设备的信息
3、配置CUDA路径
sudo vim ~/.bashrc
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
export PATH=$PATH:/usr/local/cuda/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda
source ~/.bashrc
执行完命令后终端输入nvcc -V查看cuda信息
nvcc -V
4、配置cudnn
cd /usr/include && sudo cp cudnn* /usr/local/cuda/include
cd /usr/lib/aarch64-linux-gnu && sudo cp libcudnn* /usr/local/cuda/lib64
sudo chmod 777 /usr/local/cuda/include/cudnn.h
sudo chmod 777 /usr/local/cuda/lib64/libcudnn*
cd /usr/local/cuda/lib64
sudo ln -sf libcudnn.so.8.6.0 libcudnn.so.8
sudo ln -sf libcudnn_ops_train.so.8.6.0 libcudnn_ops_train.so.8
sudo ln -sf libcudnn_ops_infer.so.8.6.0 libcudnn_ops_infer.so.8
sudo ln -sf libcudnn_adv_train.so.8.6.0 libcudnn_adv_train.so.8
sudo ln -sf libcudnn_adv_infer.so.8.6.0 libcudnn_adv_infer.so.8
sudo ln -sf libcudnn_cnn_train.so.8.6.0 libcudnn_cnn_train.so.8
sudo ln -sf libcudnn_cnn_infer.so.8.6.0 libcudnn_cnn_infer.so.8
sudo ldconfig
测试cudnn是否配置成功
sudo cp -r /usr/src/cudnn_samples_v8/ ~/
cd ~/cudnn_samples_v8/mnistCUDNN
sudo chmod 777 ~/cudnn_samples_v8
sudo make clean && sudo make
./mnistCUDNN
如果在sudo make clean && sudo make 遇到如下报错,则需要安装相应的库文件
test.c:1:10: fatal error: FreeImage.h: No such file or directory
1 | #include "FreeImage.h"
| ^~~~~~~~~~~~~
compilation terminated.
>>> WARNING - FreeImage is not set up correctly. Please ensure FreeImage is set up correctly. <<<
运行以下命令后,继续编译就会编译成功。
sudo apt-get install libfreeimage3 libfreeimage-dev
sudo make clean && sudo make
./mnistCUDNN
输出Test passed!则cudnn配置完成
5、pytorch安装
sudo apt-cache show nvidia-jetpack #查看jetpack版本,找对应的torch版本
根据jetpack版本下载对应的torch版本,pytorch下载的官网地址
安装所需要的系统软件包
sudo apt-get -y update
sudo apt-get -y install autoconf bc build-essential g++-8 gcc-8 clang-8 lld-8 gettext-base gfortran-8 iputils-ping libbz2-dev libc++-dev libcgal-dev libffi-dev libfreetype6-dev libhdf5-dev libjpeg-dev liblzma-dev libncurses5-dev libncursesw5-dev libpng-dev libreadline-dev libssl-dev libsqlite3-dev libxml2-dev libxslt-dev locales moreutils openssl python-openssl rsync scons python3-pip libopenblas-dev
系统安装包安装完成后进入到pytorch安装包目录,执行命令
pip install torch-1.12.0a0+2c916ef.nv22.3-cp38-cp38-linux_aarch64.whl
6、torchvision安装
安装所需要的软件包
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libjpeg-dev zlib1g-dev libpython3-dev libavcodec-dev libavformat-dev libswscale-dev
下载torchvision安装文件,网络异常无法克隆的话进入torchvision文件地址
git clone --branch v0.13.0 https://github.com/pytorch/vision torchvision
torchvision配置
cd torchvision
export BUILD_VERSION=0.13.0
python3 setup.py install --user
出现下面标志表示安装结束
在import torchvision 时报下面错,重启设备就可以解决了。
>>> import torchvision
/home/nvidia/torchvision/torchvision/io/image.py:13: UserWarning: Failed to load image Python extension:
warn(f"Failed to load image Python extension: {e}")
/home/nvidia/torchvision/torchvision/__init__.py:28: UserWarning: You are importing torchvision within its own root folder (/home/nvidia/torchvision). This is not expected to work and may give errors. Please exit the torchvision project source and relaunch your python interpreter.
warnings.warn(message.format(os.getcwd()))
验证torch是否可以使用GPU,torch.cuda.is_available()
(py38) nvidia@nvidia-desktop:~$ python
Python 3.8.20 (default, Oct 3 2024, 15:18:56)
[GCC 11.2.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> torch.cuda.is_available()
True
7、conda虚拟环景中配置TensorRT
安装jetpack时已经安装了tensorRT,只需要将tensorrt与本地进行软连接就可以在虚拟环境中使用了
sudo ln -s /usr/lib/python3.8/dist-packages/tensorrt* /home/nvidia/.local/lib/python3.8/site-packages/
或者也可以将TensorRT文件复制到虚拟环境的包文件下