天天看點

Jetson_nano安裝Tensorflow(2.3.1)、Pytorch(1.8.0)、paddlepaddle(2.0.0)

這是用來從系統安裝到部署Tensorflow(2.3.1)、Pytorch(1.8.0)、paddlepaddle(2.1.0)的文章

1.系統安裝及配置部分

Jetson Nano開發者套件入門

下載下傳 Jetson Nano 開發者套件 SD 卡鏡像,以及相關燒錄軟體,進行鏡像燒錄。推薦32G卡以上(系統一開始占掉14G)

燒錄完成後進入系統完成Ubuntu的首次開機設定

增加交換空間大小

由于顯存記憶體共享,即使本身設定有2G的交換空間,建議還是多增加2G。

  1. 增加2G交換空間

    sudo fallocate -l 2G /swapfile

  2. 所有使用者都可以讀寫swap file,設定正确的權限

    sudo chmod 666 /swapfile

  3. 設定交換空間

    sudo mkswap /swapfile

  4. 激活交換空間

    sudo swapon /swapfile

    為了使這個激活永久有效

    sudo vi /etc/fstab

    打開檔案在最末尾粘貼

    /swapfile swap swap defaults 0 0

  5. 驗證增加空間是否有效
sudo swapon --show
sudo free -h
           

删除不必要的軟體以節省空間

sudo apt-get purge libreoffice*
sudo apt-get clean
           

更新一下軟體源:

sudo apt-get update

如果更新太慢或者更新失敗的話就需要更換安裝源(我這裡不需要更換)

更新軟體:

sudo apt-get update

添加nvcc -V 到環境

sudo vim ~/.bashrc

在檔案末尾添加三行代碼:

export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export CUDA_ROOT=/usr/local/cuda
           

儲存退出再輸入指令:

source ~/.bashrc

驗證一下,檢視CUDA版本:

nvcc -V

2.為安裝深度架構的準備軟體

安裝重要的軟體包

sudo apt-get install build-essential make cmake cmake-curses-gui
sudo apt-get install git g++ pkg-config curl  zip zlib1g-dev libopenblas-base libopenmpi-dev 
sudo apt-get install libatlas-base-dev gfortran libcanberra-gtk-module libcanberra-gtk3-module
sudo apt-get install libhdf5-serial-dev hdf5-tools libhdf5-dev
sudo apt-get install nano locate screen

sudo apt-get install libfreetype6-dev 
sudo apt-get install protobuf-compiler libprotobuf-dev openssl
sudo apt-get install libssl-dev libcurl4-openssl-dev
sudo apt-get install cython3

sudo apt-get install libxml2-dev libxslt1-dev

sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install libxvidcore-dev libavresample-dev
sudo apt-get install libtiff-dev libjpeg-dev libpng-dev

sudo apt-get install -y python3-dev python3-testresources python3-setuptools python3-pip

python3 -m pip3 install --upgrade pip
           

預設python指令指向python3

update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1

update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2
           

系統工具jtop和nvidia-smi的結合

可以同時檢視Jetson Nano的CPU和GPU資源以及溫度

sudo -H pip install jetson-stats
sudo jtop
           

3.安裝Tensorflow-gpu 2.3.1版本

安裝機器學習常用包

sudo apt install python3-scipy -y
sudo apt install python3-pandas -y
sudo apt install python3-sklearn -y
sudo apt install python3-seaborn -y
           

檢測CUDA是否正常安裝

nvcc -V

安裝HDF5

sudo apt install libhdf5-serial-dev hdf5-tools libhdf5-dev zlib1g-dev zip libjpeg8-dev liblapack-dev libblas-dev gfortran

安裝python依賴包

sudo pip3 install -U numpy==1.18.5 future==0.18.2 mock==3.0.5 h5py==2.10.0 keras_preprocessing==1.1.1 keras_applications==1.0.8 gast==0.2.2 futures protobuf pybind11

安裝tensorflow-gpu

sudo pip3 install --pre --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v44 tensorflow

測試tensorflow

import tensorflow as tf
# 輸出提示:tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudart.so.10.2

a = tf.constant(1.)
b = tf.constant(2.)
print(a+b)
# 輸出結果:
# tf.Tensor(3.0, shape=(), dtype=float32)
 
print('GPU:', tf.test.is_gpu_available())
# 輸出最後一句為:
# GPU: True
           

安裝Keras

sudo pip3 install keras

完成

4.安裝Pytorch 1.8.0

需要下載下傳nvidia提供的pytorch安裝檔案

已上傳到網盤自行下載下傳:

連結:https://pan.baidu.com/s/1B42hAHZVduoZmc1A1h3AkA

提取碼:bi46

sudo apt-get install python3-pip libopenblas-base libopenmpi-dev 
pip3 install Cython
pip3 install numpy
pip3 install numpy torch-1.8.0-cp36-cp36m-linux_aarch64.whl
           

測試是否安裝成功

import torch
print(torch.__version__)
print('CUDA available: ' + str(torch.cuda.is_available()))
a = torch.cuda.FloatTensor(2).zero_()
print('Tensor a = ' + str(a))
           

安裝 torchvision

說明位址:https://github.com/pytorch/vision

sudo apt-get install libjpeg-dev zlib1g-dev libpython3-dev libavcodec-dev libavformat-dev libswscale-dev

因為我安裝的是1.8.0的pytorch,對應 torchvision 版本是0.9.0

手動去這個位址下載下傳相關版本代碼包,解壓後進入檔案夾

export BUILD_VERSION=0.9.0
sudo python3 setup.py install 
           

測試是否安裝成功

import torchvision

print(torchvision.__version__)

5.安裝paddlepaddle-gpu 2.0.0(TensorRT可用)

下載下傳編譯好的paddlepaddle

然後pip安裝Jetson Nano版本的Paddle Inference。(也可進行源碼編譯安裝)

參考:https://blog.csdn.net/weixin_45449540/article/details/107704028

pip install paddlehub

繼續閱讀