概要

as005ではRootless Dockerを利用してVitis AIを動作させることができます。Rootless Dockerをセットアップし、Vitis AIのデモをVCK5000で動かすまでの手順を示します。

手順

  1. as005を予約し、リモートデスクトップで接続する

  2. Rootless Dockerの設定ファイルを作成する

    mkdir -p ~/.config/docker
    echo "{ \\"data-root\\" : \\"/docker-data/$(id -un)\\" }" > ~/.config/docker/daemon.json
    
  3. Rootless Dockerをセットアップする

    dockerd-rootless-setuptool.sh install
    
  4. Vitis AIのDockerイメージをロードする

    docker load < /tools/docker/xilinx_vitis-ai-pytorch-cpu_ubuntu2004-3.0.0.106.tar
    
  5. Vitis AIのGitリポジトリを作業領域(/scratch/$USER)にコピーする

    cd /scratch/$USER
    cp -a /tools/repo/Xilinx/Vitis-AI .
    

    Docker環境内から画像や映像をGUI表示する場合は以下のリンクの手順を実施してください(xhost +コマンドの実行も必要です)。この手順は以下のサンプルの実行に必要です。

    https://xilinx.github.io/Vitis-AI/3.0/html/docs/install/Alveo_X11.html

  6. Vitis AIのDocker環境を起動する(以降はDocker環境内での手順となります)

    ./docker_run.sh xilinx/vitis-ai-pytorch-cpu:ubuntu2004-3.0.0.106
    
  7. カードを使用するための環境変数を設定する

    source /workspace/board_setup/vck5000/setup.sh DPUCVDX8H_6pe_dwc
    
  8. デモ用の画像を展開する

    sudo tar xf /tools/data/vitis_ai/3.0/vitis_ai_runtime_r3.0.0_image_video.tar.gz -C /workspace/examples/vai_runtime/ --no-same-owner
    
  9. モデルを展開するディレクトリを作成する

    sudo mkdir -p /usr/share/vitis_ai_library/models/6PE_aieDWC
    
  10. モデルを展開する

    sudo tar xf /tools/data/vitis_ai/3.0/models/resnet50-vck5000-DPUCVDX8H-6pe-aieDWC-r3.0.0.tar.gz -C /usr/share/vitis_ai_library/models/6PE_aieDWC --no-same-owner
    
  11. モデルのディレクトリを環境変数に設定する

    export VAI_LIBRARY_MODELS_DIR=/usr/share/vitis_ai_library/models/6PE_aieDWC
    
  12. Vitis AI RuntimeのResNet50サンプルのディレクトリに移動する

    cd /workspace/examples/vai_runtime/resnet50
    
  13. サンプルをビルドする

    sudo bash -x build.sh
    
  14. XRMを起動する

    /opt/xilinx/xrm/bin/xrmd &
    
  15. サンプルを実行する

    ./resnet50 /usr/share/vitis_ai_library/models/6PE_aieDWC/resnet50/resnet50.xmodel
    

トラブルシューティング