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