序文
Nvidia の組み込み開発ボード (Jetson Nano、TX1/TX2、Xavier) は、強力な GPU コンピューティング能力が特徴です。この投稿では、Jetson Xavier NX 開発ボードでの pytorch GPU ディープ ラーニング環境の展開を記録します。他のタイプの開発ボードの手順似ています。
グラフィックス カード ドライバーと CUDA は、開発ボードによって書き込まれたイメージ システムにインストールされていますが、この投稿ではグラフィックス カード ドライバーと CUDA のインストール方法は繰り返しません。
参考
(1)condaをインストールする
組み込み開発ボードJetson Xavier NX
、システム アーキテクチャはaarch64
アーキテクチャです。一般的に使用される Windows、Mac、Linux のインストール方法は適用されません。次のコマンドを使用してアーキテクチャを表示できます。
uname -a
condaをインストールするにはanacondaが真っ先に思い浮かぶのですが、condaは大きすぎるので諦めてminicondaを試してみたのですが、たまたまminicondaのアーキテクチャバージョンがaarch64なのですがインストールに失敗してしまいます(インストールは成功するのですが) conda で環境を作成するときに、「不正な命令(コアダンプ)」というプロンプトが表示されるので、また諦めます。
最終的には、miniconda の代替手段のみを使用できます。miniforge
(1) インストールパッケージをダウンロードする
miniforge
公式 Web サイトにアクセスしてインストール パッケージをダウンロードしますが、テスト後に正常にインストールできるMiniforge3-4.12.0-0-Linux-aarch64.shバージョンをインストールすることをお勧めします。
(2)condaをインストールする
bash Miniforge3-Linux-aarch64.sh -b
~/miniforge3/bin/conda init
ターミナルを再度開いて conda を表示します (conda をインストールするときに、conda の初期化環境が に書き込まれることに注意してください.bashrc
。zsh の場合は、コンテンツの.bashrc
この.zshrc
)。
# 查看conda版本
conda -V
# 关闭conda的自启动bash环境
conda config --set auto_activate_base False
# 添加清华源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
conda config --set show_channel_urls yes
conda config --get channels
(3) conda環境を作成する
# 注意python版本得是3.6,因为jetson提供的torch都是3.6的
conda create --name torch180 python=3.6
# pip添加豆瓣源
python -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip
pip config set global.index-url https://pypi.douban.com/simple
(2) トーチの取り付け
(1) JetPackのインストール
jtop (Nvidia 公式パッケージ) を Python の下にインストールします。
sudo -H pip3 install -U jetson-stats
Jetson NX ハードウェア監視を表示する
jtop
最初の行から、Jetpack のバージョンが 4.4 であることがわかります。バージョン番号を記録します。
(2) Pytorchインストールパッケージをダウンロードする
公式ウェブサイトの投稿にアクセスして、Jetpack バージョンと torch バージョンに対応する whl インストール パッケージをダウンロードします。
(3) インストール依存環境
# 后续torch环境在conda创建的虚拟环境下安装,启动conda的虚拟环境
conda activate torch180
# 安装依赖库
sudo apt-get install python3-pip libopenblas-base libopenmpi-dev libomp-dev
pip install Cython
# 不要安装最新1.19.5版本的numpy,会出现Illegal instruction (core dumped)的问题
pip install numpy==1.19.4
# 安装opencv-python会很慢,大概一个小时
pip install opencv-python pillow
(4) トーチの取り付け
pip install torch-1.8.0-cp36-cp36m-linux_aarch64.whl
torchvision もインストールする必要があります
sudo apt-get install libjpeg-dev zlib1g-dev libpython3-dev libavcodec-dev libavformat-dev libswscale-dev
git clone --branch v0.9.0 https://github.com/pytorch/vision torchvision
cd torchvision
export BUILD_VERSION=0.9.0
python3 setup.py install --user
cd ../
インストールが成功したかどうかを確認します。
import torch
torch.cuda.is_available()
a=torch.Tensor([1,2])
a=a.cuda()
import torchvision
print(torchvision.__version__)
これまでのところ、GPU バージョンの pytorch は NX 開発ボードに正常にデプロイされており、テスト後の yolov5s モデルのフレーム レートは約 10 です。