Jetson Nano簡單配置並安裝pytorch1.6
Jetson Nano簡要介紹
- 用於主存儲器的 microSD 卡插槽
- 40 針擴展接頭
- 用於 5V 電源輸入或設備模式的 Micro-USB 介面
- 千兆乙太網埠
- USB 3.0 埠(4 個)
- HDMI 輸出埠
- DisplayPort 介面
- 用於 5V 電源輸入的直流桶式插座
- MIPI CSI-2 攝影機介面
準備條件
- 64g以上的tf卡,16g是肯定不夠用的,因為一個鏡像就14g。32應該也可以。
- 鍵盤滑鼠
- HDMI介面的顯示器
- usb電源
下載鏡像
下載地址://developer.nvidia.com/jetson-nano-sd-card-image
下載鏡像燒錄工具:Ether 地址://www.balena.io/etcher
燒錄系統
打開Ether
點擊select image,選擇下載解壓好的鏡像,並且選擇指定的tf卡,然後點擊Flash
參考地址://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit#intro
安裝系統
安裝的過程介面與普通的Ubuntu系統的安裝過程一致。
CUDA組件檢查
jetson-nano的系統鏡像中已經自帶了cuda、cudnn、TensorRT等組件
- 檢查CUDA
開始時輸入如下的內容。
nvcc -V
會發現沒有cuda, 需要進行如下的配置。
使用vim打開配置文件
sudo vim ~/.bashrc
在這個配置文件的最後寫入如下的內容。
export CUDA_HOME=/usr/local/cuda-10.2
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-10.2/bin:$PATH
更新配置文件
source ~/.bashrc
檢查cuda是否正常。
nvcc -V
- 檢查CUDNN
使用官方的例子檢查。
cd /usr/src/cudnn_samples_v8/mnistCUDNN #進入例子目錄
sudo make #編譯一下例子
sudo chmod a+x mnistCUDNN # 為可執行文件添加執行許可權
./mnistCUDNN # 執行
安裝pytorch
這裡安裝pytorch1.6與tochvision0.7.0.
安裝pytorch。
wget //nvidia.box.com/shared/static/9eptse6jyly1ggt9axbja2yrmj6pbarc.whl -O torch-1.6.0-cp36-cp36m-linux_aarch64.whl
sudo apt-get install python3-pip libopenblas-base libopenmpi-dev
pip3 install Cython
pip3 install numpy torch-1.6.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 0.7.0 //github.com/pytorch/vision torchvision # see below for version of torchvision to download
cd torchvision
export BUILD_VERSION=0.7.0 # where 0.x.0 is the torchvision version
sudo python setup.py install # use python3 if installing for Python 3.6
cd ../ # attempting to load torchvision from build dir will result in import error
pip install 'pillow<7' # always needed for Python 2.7, not needed torchvision v0.5.0+ with Python 3.6
測試是否安裝成功。
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__)
安裝過程官方參考地址://forums.developer.nvidia.com/t/pytorch-for-jetson-version-1-7-0-now-available/72048
更多資料
-
微信公眾號: 小哲AI
-
GitHub地址: //github.com/lxztju/leetcode-algorithm
-
csdn部落格: //blog.csdn.net/lxztju
-
AI研習社專欄://www.yanxishe.com/column/109