CUDA&cuDNN環境構築のためのバージョン確認方法(Windows)
はじめに
深層学習技術を用いたソフトを使用する際に、CUDAとcuDNNの導入が必要なケースも増えてきました。 ダウンロードやインストールもそこそこ難易度が高いですが、インストールできたとしても動かないことがよくあります。よくある問題の1つは、バージョンの相性問題です。
そこでこの記事では、各ツールのバージョンを確認する方法を記載します。(※各ツールのインストール方法は扱いません)
バージョン合わせの重要性
ハード側は、GPU ドライバーのバージョンによって、動作するCUDAバージョンが決まり1、そのCUDAバージョンによって動作するcuDNNのバージョンが決まり2ます。
この条件を満たした上でさらに、ソフト側がサポートするバージョンであること、が求められます。
※ソフト側からすれば使いたいのはcuDNNやCUDAなので、以下のように逆の流れで決まるわけですね。
- ソフトはcuDNNのバージョンXに対応。
- cuDNNのバージョンXに対応するCUDAはバージョンY。
- CUDAのバージョンYに対応するGPUドライバーはバージョンZ。
特に古いバージョン向けのソフトを新しいバージョンの環境では動かせない(下位互換性がない)ことがあるため、バージョン合わせが重要になります。
作業情報
筆者環境
- OS: Windows 10 Home 64bit
- GPU: NVIDIA GeForce RTX 3060 Ti
- NVIDIA ドライバー、CUDA Toolkit、cuDNN を導入済み
確認内容
手順
GPUの型番
【GUIで確認する】
Ctrl
キー +Shift
キー +Esc
キーを押して、タスクマネージャーを開きます。簡易表示になっている場合は、左下の「詳細」をクリックします。
「パフォーマンス」タブを開き、左側のリストの一番下の項目にGPUと書かれたものがある(はず)なので、クリックします。
- 右上に表示されているのがGPUの型番です。
【CLIで確認する】
NVIDIA ドライバーのバージョン
【GUIで確認する】
Win
キー +S
キー を押し、検索ボックスに「NVIDIA Control Panel」のように入力し、NVIDIA コントロール パネルを起動します。メニューバーの「ヘルプ」 > 「システム情報」をクリックします。
表示されたシステム情報の、詳細欄の「ドライバーのバージョン」で表示されているのがインストールされているNVIDIA ドライバーのバージョンです。
【CLIで確認する】
CUDA Toolkit のバージョン
【CLIで確認する】
コマンドプロンプトを開き、以下を実行します。
nvcc -V
Cuda compilation tools,
のあとに表示されているバージョンがCUDA Toolkit のバージョンです。- 見つからないと表示された場合は、未導入か、CUDA Toolkitがうまくインストールできていない可能性があります。
cuDNN のバージョン
【CLIで確認する】
コマンドプロンプトを開き、以下を実行します。
where cudnn64_*.dll
OSが認識しているcuDNNが表示されます。
- 見つからないと表示された場合は未導入か、ファイルの配置ができていても、PATHが通っていない場合があります。
表示されているパスをメモ帳などにコピーし、
bin\
以降のパスをinclude\cudnn.h
に置き換えます。#例:置き換え前 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin\cudnn64_8.dll #例:置き換え後 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include\cudnn.h
作成したパスに向けて以下のようなfindコマンドで
#define
を検索します。find "#define" "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include\cudnn.h"
以下のような、結果が返ってきていれば、上から順番に数字を並べるとcuDNNのバージョンになります。
#define CUDNN_MAJOR 8 #define CUDNN_MINOR 1 #define CUDNN_PATCHLEVEL 1
- この場合は、バージョン8.1.1です。
上記のような結果が返ってこなければ、最後の
cudnn.h
をcudnn_version.h
に変更して再試行します。find "#define" "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include\cudnn_version.h"
- 筆者環境では、
cudnn_version.h
に変更して確認することができました。
- 筆者環境では、
確認手順は以上です。
参考サイト
- NVIDIA 公式ドキュメント
- NVCC :: CUDA Toolkit Documentation https://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/#nvcc-command-options
- NVIDIA System Management Interface | NVIDIA Developer https://developer.nvidia.com/nvidia-system-management-interface
- [Linux / Ubuntu] GPUの種類(フルネーム)を確認する【名前が途切れる人向け】 - Qiita https://qiita.com/tik26/items/b3210cb945493345e8f7
- 環境構築したCUDA及びcuDNNのバージョンを確認する方法(Windows) | 技術的特異点 http://tecsingularity.com/cuda/version_conf/
-
Release Notes :: CUDA Toolkit Documentation https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html#cuda-major-component-versions__table-cuda-toolkit-driver-versions↩
-
Support Matrix :: NVIDIA Deep Learning cuDNN Documentation https://docs.nvidia.com/deeplearning/cudnn/support-matrix/index.html↩