vai_q_pytorch には、GPU バージョンと CPU バージョンがあります。vai_q_pytorch は、PyTorch バージョン 1.2 ~ 2.0 をサポートしますが、PyTorch のデータ並列処理はサポートしません。vai_q_pytorch をインストールする方法は 2 つあります。
Docker コンテナーを使用してインストール
Vitis AI は、vai_q_pytorch を含む量子化ツールの Docker コンテナーを提供します。GPU または CPU コンテナーの実行後、Vitis AI-PyTorch conda 環境をアクティベートします。
conda activate vitis-ai-pytorch
注記: conda 環境に複数のパッケージをインストールする場合、パーミッションの問題が発生するようであれば、
vitis-ai-pytorch
を直接使用する代わりに、vitis-ai-pytorch
をベースとして個別の conda 環境を作成できる場合があります。AMD Model Zoo の pt_pointpillars_kitti_12000_100_10.8G_1.3 モデルはこの例です。PyTorch バージョン (1.2 ~ 2.0) を指定した新しい conda 環境は、https://github.com/Xilinx/Vitis-AI/blob/v3.5/docker/common/replace_pytorch.sh スクリプトを使用して作成できます。このスクリプトは次を実行します。
- Vitis AI-pytorch から conda 環境のクローンを作成する。
- 元の PyTorch、torchvision、および vai_q_pytorch パッケージをアンインストールする。
- 指定したバージョンの PyTorch、torchvision をインストールする。
- ソース コードから vai_q_pytorch を再インストールする。
replace_pytorch.sh new_conda_env_name
注記: スクリプトを実行する前に、replace_pytorch.sh スクリプト内の Python、PyTorch、および cuda-toolkit のバージョンを確認し、要件に応じて編集します。PyTorch のバージョンを選択し、コマンド ラインを編集する際は、PyTorch 公式ウェブ ページに記載の説明に従います。
ソース コードからインストール
vai_q_pytorch は、Pytorch プラグインとして機能するように設計された Python パッケージです。これは Vitis_AI_Quantizer 内のオープンソースです。AMD は、vai_q_pytorch は conda 環境にインストールすることを推奨します。これを行うには、次の手順に従います。
- .bashrc に CUDA_HOME 環境変数を追加します。GPU バージョンでは、CUDA ライブラリが /usr/local/cuda にインストールされている場合は、.bashrc に次の行を追加します。CUDA が別のディレクトリにある場合は、それに応じてパスを変更します。
export CUDA_HOME=/usr/local/cuda
CPU バージョンでは、.bashrc 内のすべての CUDA_HOME 環境変数設定を削除します。シェル ウィンドウのコマンド ラインで次のコマンドを使用してクリーン アップすることを推奨します。unset CUDA_HOME
- PyTorch (1.2 ~ 2.0) と torchvision をインストールします。
次のコードでは、PyTorch 1.7.1 と Torchvision 0.8.2 を例として使用します。その他のバージョンの手順の詳細は、PyTorch のウェブサイトを参照してください。
pip install torch==1.7.1 torchvision==0.8.2
- その他の依存ライブラリをインストールします。
pip install -r requirements.txt
- vai_q_pytorch をインストールします。
cd ./pytorch_binding python setup.py install
- インストールを検証します。
python -c "import pytorch_nndct"