🚀
【環境構築】ONNX-Runtime GPU(local, 仮想環境venv)
0.この記事は何?
この記事は、Pytorchを使用するための環境設定について解説しています。内容には、仮想環境の作成、CUDAとcuDNNのインストール、Pytorchのインストール、ONNX Runtimeの設定、そしてGPUの認識確認の手順が含まれています。
1. 仮想環境の作成とアクティベーション
# 任意のディレクトリに移動
cd C:\Users\thyt\Pytorch
# 仮想環境を作成
python -m venv pytorchenv
# 仮想環境をアクティベート
pytorchenv\Scripts\activate
# (任意)Visual Studio Code用の ipykernel パッケージをインストール
pip install ipykernel
2. CUDAとcuDNNのインストール
ONNXの構成に従って、CUDA ToolkitとcuDNNをインストールします。
CUDAおよびCuDNNのパス設定に関して、必要に応じて以下の記事を参照
- https://qiita.com/TrashBoxx/items/2e884998cd1193f73e2f#cudnnのインストール
- https://qiita.com/d83yk/items/f4e5019d3f4bbeaf36dc#download-2
2.5 Pytorchのインストール
ONNXの構成に合うようにCUDAのバージョンを指定しPytorchを仮想環境にインストール
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
以下のコードを入力してCUDAが使用可能かどうかを確認します。
python -c "import torch; print(torch.cuda.is_available())"
3. ONNX Runtimeのインストール
ONNX RuntimeとONNX Runtime GPU版を pip を使ってインストールします。
# ONNXの構成に従いONNX Runtime==1.16のインストール
pip install onnxruntime==1.16
ONNXの構成のページには、ONNX、onnxruntime-gpuについては記載がなかったのでとりあえずpipでインストール
pip install onnx
pip install onnxruntime-gpu
4. GPUの認識の確認
ONNX Runtimeを使ってGPUが認識されているか確認します。
import onnxruntime
# ONNX Runtimeが使用しているデバイス(CPUかGPUか)を表示
print(onnxruntime.get_device())
# 推論に使用するプロバイダーを設定。ここではGPUを使用するためにCUDAExecutionProviderを指定
providers = ["CUDAExecutionProvider"]
# モデルのパスを指定
model_path = "model.onnx"
# 推論セッションを初期化し、CUDAを使用するように設定
session_fp32 = onnxruntime.InferenceSession(model_path, providers=providers)
# 使用しているプロバイダー(この場合はCUDA)を表示
print(session_fp32.get_providers())
5. (任意)Pytorchで使用するパッケージのインストール
pip install timm
6. githubリポジトリ
Discussion