天天看點

Nvidia Jetson Agx Xavier 從源碼編譯安裝PaddlePaddle_gpu一、環境準備二、安裝步驟

        Jetson系列是Arm裝置,而PaddlePaddle的whl檔案不支援Arm裝置,是以隻能通過源碼編譯安裝,以下是gpu版本安裝記錄。

直接下載下傳:

https://download.csdn.net/download/qq_41426807/87260820

一、環境準備

裝置:Nvidia Jetson Agx Xavier

Linux版本:Ubuntu18.04

Jetpack4.6.1

首先,確定Jetson裝置安裝了CUDA,cudnn等sdk,如未安裝,執行以下指令進行安裝

sudo apt install nvidia-jetpack
           

二、安裝步驟

        在 Linux 的系統下有 2 種編譯方式,推薦使用 Docker 編譯。 Docker 環境中已預裝好編譯 Paddle 需要的各種依賴,相較本機編譯環境更簡單。

1、使用 Docker 編譯

1.1請首先選擇您希望儲存 PaddlePaddle 的路徑,然後在該路徑下使用以下指令将 PaddlePaddle 的源碼從 github 克隆到本地目前目錄下名為 Paddle 的檔案夾中:

git clone https://github.com/PaddlePaddle/Paddle.git
           

1.2. 進入 Paddle 目錄下:

cd Paddle
           

1.3. 拉取 PaddlePaddle 鏡像

GPU 版的 PaddlePaddle:

nvidia-docker pull registry.baidubce.com/paddlepaddle/paddle:latest-gpu-cuda10.2-cudnn7-dev
           

1.4. 建立并進入已配置好編譯環境的 Docker 容器:

nvidia-docker run --name paddle-test -v $PWD:/paddle --network=host -it registry.baidubce.com/paddlepaddle/paddle:latest-gpu-cuda10.2-cudnn7-dev /bin/bash
           
    • --name paddle-test

      :為您建立的 Docker 容器命名為 paddle-test;
    • -v $PWD:/paddle

      : 将目前目錄挂載到 Docker 容器中的/paddle 目錄下(Linux 中 PWD 變量會展開為目前路徑的絕對路徑);
    • -it

      : 與主控端保持互動狀态;
    • registry.baidubce.com/paddlepaddle/paddle:latest-gpu-cuda10.2-cudnn7-dev

      :使用名為

      registry.baidubce.com/paddlepaddle/paddle:latest-gpu-cuda10.2-cudnn7-dev

      的鏡像建立 Docker 容器,/bin/bash 進入容器後啟動/bin/bash 指令。

注意: 請確定至少為 docker 配置設定 4g 以上的記憶體,否則編譯過程可能因記憶體不足導緻失敗。

1.5. 進入 Docker 後進入 paddle 目錄下:

cd /paddle
           

1.6. 切換到較穩定版本下進行編譯:

#git checkout [分支名]
#例如
git checkout release/2.4

           

1.7. 建立并進入/paddle/build 路徑下:

mkdir -p /paddle/build && cd /paddle/build
           

1.8. 使用以下指令安裝相關依賴:

        安裝 protobuf。

pip3.6 install protobuf
           

注意:以上用 Python3.6 指令來舉例,如您的 Python 版本為 3.7/3.8/3.9/3.10,請将上述指令中的 pip3.6 改成 pip3.7/pip3.8/pip3.9/pip3.10

        安裝 patchelf,PatchELF 是一個小而實用的程式,用于修改 ELF 可執行檔案的動态連結器和 RPATH。

apt install patchelf
           

1.9. 執行 cmake:

對于需要編譯GPU 版本 PaddlePaddle的使用者:

cmake .. -DPY_VERSION=3.6 -DWITH_GPU=ON
           

        注意修改參數

-DPY_VERSION

為您希望編譯使用的 python 版本, 例如

-DPY_VERSION=3.6

表示 python 版本為 3.6

1.10. 執行編譯:

        使用多核編譯

make -j$(nproc)
           

注意: 編譯過程中需要從 github 上下載下傳依賴,請確定您的編譯環境能正常從 github 下載下傳代碼。

1.11. 編譯成功後進入

/paddle/build/python/dist

目錄下找到生成的

.whl

包:

cd /paddle/build/python/dist
           

1.12. 在目前機器或目标機器安裝編譯好的

.whl

包:

#可建立虛拟環境進行安裝
pip3 install -U [whl 包的名字]
           

     參考Linux 下從源碼編譯-使用文檔-PaddlePaddle深度學習平台

繼續閱讀