Windows での,NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.7.0,NVIDIA cuDNN 8.4.1 のインストール,nvcc の使用例をスクリーンショット等で説明する.
このページでは,TensorFlow 2.9 の運用を想定している.TensorFlow の他のバージョンでも同様の手順になる(TensorFlow のインストールは別ページで説明している). CUDA は,NVIDIA社が提供している GPU 用のプラットフォームである. NVIDIA 社のグラフィックス・カードが持つ GPU の機能を使うとき,NVIDIA CUDA ツールキット を利用することができる. NVIDIA 社のグラフィックス・カードが持つ GPU の機能を使うとき,NVIDIA CUDA ツールキット を利用することができる.
GPU は,グラフィックス・プロセッシング・ユニットの略で、コンピュータグラフィックス関連の機能,乗算や加算の並列処理の機能などがある.
【目次】
【サイト内の関連ページ】
先人に感謝.
【外部へのリンク】
GPU は,グラフィックス・プロセッシング・ユニットの略で、コンピュータグラフィックス関連の機能,乗算や加算の並列処理の機能などがある. NVIDIA CUDA ツールキット は,NVIDIA社が提供している GPU 用のプラットフォームである.
そのことについて,より詳しい説明は: 別ページで説明している.
NVIDIA CUDA ツールキットのアーカイブのページ: https://developer.nvidia.com/cuda-toolkit-archive
NVIDIA cuDNN のページ: https://developer.nvidia.com/cudnn
必ず,使用する NVIDIA CUDA ツールキットにあう NVIDIA cuDNN を使うこと.
Windows での追加の注意点
NVIDIA CUDA ツールキットの nvcc の動作に必要.
NVIDIA CUDA 11.7, 11.6 で使うWindows での Build Tools for Visual Studio 2022 のインストール: 別ページで説明している.
NVIDIA CUDA 11.5 などで使うWindows での Build Tools for Visual Studio 2019 のインストール: 別ページで説明している.
但し,最新版ではない NVIDIA CUDA ツールキットを使うときには, NVIDIA CUDA ツールキットのインストーラに同封のNVIDIA ドライバは古いので,問題があるので, 前準備として,NVIDIA ドライバのインストールを行うこと.
次のページから,最新版のNVIDIA ドライバのダウンロードできる (Windows, Linux):
他のウインドウを開いている場合,NVIDIA CUDA ツールキットのインストールが失敗する場合がある.
「NVIDIA CUDA ツールキット, NVIDIA cuDNN のバージョンは何でも良い」か? そして, 「TensorFlow, PyTorch のバージョンも何でも良い (あるいは,TensorFlow, PyTorch を使う予定はない)」か?
NVIDIA CUDA ツールキット11.7.0, NVIDIA cuDNN 8.4.1 (2022/06時点) を使う.
その根拠:
必ずしも,最新の NVIDIA CUDA ツールキット を使えるとは限らないので確認が必要.
古い版を使うことになる. 組み合わせに注意が必要である. そのことについての詳しい説明は: 別ページで説明している.
Build Tools for Visual Studio 2022 (ビルドツール for Visual Studio 2022)もしくはVisual Studio 2022 を,前もってインストールしておく.
Windows での Visual Studio 2022 のインストール: 別ページで説明している.
Build Tools for Visual Studio 2022 (ビルドツール for Visual Studio 2022) のインストール: このページの下で説明している.
Build Tools for Visual Studio (ビルドツール for Visual Studio)は,Windows で動くMicrosoft の C++ コンパイラーである.
(例)cl hello.c
「cl hello.c」でコンパイルしたときは「hello.exe」ファイルができるので確認
#pragma warning(disable: 4996)
Build Tools for Visual Studio は,Windows で動くMicrosoft の C++ コンパイラーである.
ダウンロードページ
https://visualstudio.microsoft.com/ja/downloads/
詳細説明
Build Tools for Visual Studio 2022 (ビルドツール for Visual Studio 2022)のインストール: 別ページで説明している.
インストール手順の概要
コンパイラの動作確認
c: cd %HOMEPATH% notepad hello.c
#include <stdio.h> int main() { printf("Hello,World!\n"); printf("sizeof(size_t)=%ld\n", sizeof(size_t)); return 0; }
結果として,「Hello,World!」「sizeof(size_t)=8」と表示されればOK.
cd %HOMEPATH% cl hello.c .\hello.exe
実行結果例
Windows のスタートメニューで「設定」,「アプリ」と操作して,「NVIDIA ・・・」を削除
hwinfo (URL: https://www.hwinfo.com) を使って調べることができる.
あとで、NVIDIA CUDA ツールキットをインストールするので、そのときに、NVIDIA ドライバもインストールすることにする.次へ進む.
但し, NVIDIA CUDA ツールキットの古いバージョンを使う場合には,次のページから,最新のNVIDIA ドライバをダウンロードして,インストールする.
NVIDIA ドライバのダウンロードページ: https://www.nvidia.co.jp/Download/index.aspx?lang=jp
NVIDIA CUDA クイックスタートの公式ページ: https://docs.nvidia.com/cuda/cuda-quick-start-guide/index.html
ここでは,NVIDIA CUDA ツールキットの11.7 系列の最新版を選んでいる.
Windows 10 のときは,「10」を選んでください.
既定(デフォルト)のままでよい.「OK」をクリック.
「CUDA」にチェックする.その他は,必要なものがあればチェックする.「次へ」をクリック.
表示されなくても問題はない.
表示された場合には,次のように判断する.
ここで,NVIDIA CUDA ツールキットのインストールを中止. 先に, Visual Studio 2022 のインストールを行う.
NVIDIA CUDA ツールキットのインストールを中止する必要はない.
あとで構わないので,Build Tools for Visual Studio 2022 (ビルドツール for Visual Studio 2022)のインストールを行っておく (Build Tools for Visual Studio 2022 (ビルドツール for Visual Studio 2022)のインストールが終わっていても,Visual Studio Community のインストールを行っていない場合には,この表示は出る).
Visual Studio がインストール済みのときは,Nsight for Visual Studio がインストールされたことが確認できる.確認したら「次へ」をクリック.
Visual Studio をインストールしていないときは,Nsight for Visual Studio はインストールされない.
※ 「コンピュータを再起動してください」と表示される場合がある.そのときは,再起動する.
Windows のシステム環境変数が自動で設定されていることを確認
バージョン 11.7.0 の場合
次のように自動設定されるので確認.
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\bin C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\libnvpp
※ 複数の版の CUDA ツールキットをインストールする場合には, 複数のパスが設定される このとき・古い版の方が先に来ている場合には、後になるように調整する
バージョン 11.7.0 の場合
次のように自動設定されるので確認.
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7
※ 複数の版の CUDA ツールキットをインストールしている場合には,最後にインストールしたものが設定される
バージョン 11.7.0 の場合
システム環境変数 CUDA_PATH_V11_7
次のように自動設定されるので確認.
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7
nvcc にパスが通っていることを確認する
Windowsのコマンドプロンプトを開き、次のコマンドを実行.
where nvcc
要点
管理者として実行した コマンドプロンプトで,次のコマンドを実行.
v11.7」のところは,実際にインストールされているバージョンを確認し,読み替えてください.
cd "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\bin" curl -O http://www.winimage.com/zLibDll/zlib123dllx64.zip call powershell -command "Expand-Archive zlib123dllx64.zip" copy zlib123dllx64\dll_x64\zlibwapi.dll .
Windows で 「Could not locate zlibwapi.dll. Please make sure it is in your library path!」と表示されるときの対処:
ここの説明を参考に ZLIB DLL をインストールする.
cuDNN のダウンロードのため.
「Join now」をクリック.その後,画面の指示に従う. 利用者本人が,電子メールアドレス,表示名,パスワード,生年月日を登録.利用条件等に合意.
ここでは「NVIDIA cuDNN v8.4.1 for CUDA 11.x」を選んでいる.
このとき,画面の「for CUDA ...」のところを確認し,使用するNVIDIA CUDA のバージョンに合うものを選ぶこと.
次の操作により,cudnn64_8.dll にパスが通っていることを確認する.
Windowsのコマンドプロンプトを開き、次のコマンドを実行.エラーメッセージが出ないことを確認.
where cudnn64_8.dll
call powershell -command "[System.Environment]::SetEnvironmentVariable(\"CUDNN_PATH\", \"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\", \"Machine\")"
起動は,Windows のメニューで「Visual Studio 2022」の下の「x64 Native Tools コマンドプロンプト (x64 Native Tools Command Prompt)」を選ぶ.「x64」は,64ビット版の意味である.
※ 32ビットのNative Tools コマンドプロンプトでは nvcc が動かない.
以下の操作は,x64 Native Tools コマンドプロンプトで行う
エラーメッセージが出ていないことを確認.
where cl
https://devblogs.nvidia.com/easy-introduction-cuda-c-and-c/に記載のソースコードを使用. まず,エディタを開く(ここでは「メモ帳」を使っている).
x64 Native Tools コマンドプロンプト で,次のコマンドを実行. ファイル名は hello.cu としている.
cd %HOMEPATH% notepad hello.cu
その後,ファイルを編集し,ファイルを保存.
ファイル hello.cu ができる.
「nvcc hello.cu」で a.exp というファイルができる. 「Max error: 0.000000」と表示されればOK.
うまく動かないときは,まず,マイクロソフト C++ ビルドツールの動作を,別ページの手順により確認し,異常があれば,マイクロソフト C++ ビルドツールのインストールなどで対処.それでも動かないときは,NVIDIA CUDA ツールキット 11.7.0 のインストールしたときの作業に間違いがなかったかを再確認.
nvcc hello.cu
.\a.exe