Kria Starter Kitで、Vitis AIを動かす
環境構築2(Vitis-AIインストール、環境設定)
公開日:2023年1月5日
本記事ではVitis-AI開発環境とJupyter Notebookの準備を行い、ホストPCからKV260のJupyter Notebookへアクセス確認を行うところまでを行います。
構成図
構成図は以下となります。色付き部分が本記事の対応部分です。
Dockerインストール
Vitis-AI開発環境はDockerでの提供になっています。インストール方法を参照してホストPCにDockerをインストールしておいてください。
Vitis-AIインストール
ホストPCでVitis-AIからソースを取得します。
記事作成時点ではver2.5のブランチがないのでmasterを使用します。
user@hostpc:~$ git clone --recurse-submodules https://github.com/Xilinx/Vitis-AI
Vitis-AIはcpu版とgpu版が提供されています。 記事ではcpu版を使用します。cpu版のDockerイメージを取得します。
user@hostpc:~$ docker pull xilinx/vitis-ai-cpu:latest
ソースコードに起動スクリプトが提供されているので、以下でVitis-AI開発環境を起動します。
user@hostpc:~$ cd Vitis-AI (git cloneした場所に移動)
user@hostpc:~$ ./docker_run.sh xilinx/vitis-ai-cpu:latest
起動中にキー入力を促されるので従いつつ、最終的に以下の画面となれば起動成功です。起動を確認したらexitでVitis-AI開発環境を終了します。
今後、Vitis-AI開発環境の作業が必要な場合は上記スクリプトを実行します。
Jupyter Notebook設定
Jupyter Notebookはブラウザ経由でPython等のプログラムを対話型で実行可能な環境です。
ホストPCからKV260上でプログラムの記述や実行が可能になるため便利です。KV260とホストPCを同一ネットワークに接続しておく必要がありますので注意してください。
KV260準備
環境構築1で準備したイメージにはJupyter Notebook環境が既に入っていますのでインストールは不要です。
ホストPCからアクセス可能なように設定を行います。KV260を起動してシリアル接続しておいてください。起動完了したら以下コマンドで設定ファイルを生成します。
user@kv260:~$ jupyter notebook --generate-config
~/.jupyter/jupyter_notebook_config.pyの設定ファイルが生成されます。以下のip設定を追記することでホストPCからアクセス可能になります。
c.NotebookApp.ip = '0.0.0.0'
以下のコマンドで追記します。
※ 追記方法はテキストエディタ等を使用して頂いても構いません
user@kv260:~$ search_str="# c.NotebookApp.ip = 'localhost'"
user@kv260:~$ set_str="c.NotebookApp.ip = '0.0.0.0'"
user@kv260:~$ sed -i -e "/^$search_str$/a $set_str" ~/.jupyter/jupyter_notebook_config.py
ホストPC側からのアクセスで使用しますのでip addressコマンド等でKV260のIPアドレスを控えておいてください。IPアドレスを控えたらJupyter Notebookを起動します。
user@kv260:~$ jupyter notebook
初回のみ以下の行のtokenも控えておきます。
※ tokenの値自体は以下とは異なりますのでご注意ください
この時点で
- KV260のIPアドレス
- token
が取得できている状態となります。ip設定は次回起動時も有効になっているので起動毎の再設定は不要です。
ホストPC準備
ブラウザからhttp://[KV260のIP]:8888にアクセスします。
うまくアクセスできない場合はKV260の再起動を試してください。初回は以下画面の上部のtokenを入力します。2回目以降はtoken不要になると思いますが要求された場合は入力してください。
入力後、以下表示となったらokです。
試しにnotebookを作成してみます。上記画面の右のnewから「Python 3(ipykernel)」を選択します。hello worldの文字列をprintするコードを記述、記述したセルを選択した状態でRunを実行、以下の画面になればKV260上でコードが実行されたことになります。
まとめ
Vitis-AI開発環境とJupyter Notebookの準備を行いました。
ホストPCからKV260のJupyter Notebookにアクセスできるようになれば、KV260上のコード修正や動作確認が容易になるため便利です。
※文中に記載されている各種名称、会社名、商品名などは各社の商標もしくは登録商標です。