金子邦彦研究室インストールWindows の種々のソフトウェア(インストール)NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.6.2,NVIDIA cuDNN v8.4.0 のインストールと動作確認(Windows 上)

NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.6.2,NVIDIA cuDNN v8.4.0 のインストールと動作確認(Windows 上)

Windows での,NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.6.2,NVIDIA cuDNN v8.4.0 のインストール,nvcc の使用例をスクリーンショット等で説明する.

このページでは,TensorFlow 2.8 の運用を想定している.TensorFlow の他のバージョンでも同様の手順になる(TensorFlow のインストールは別ページ »で説明). NVIDIA CUDA ツールキット は,NVIDIA社が提供する GPU 用のツールキットである.GPU を用いた演算のプログラム作成や動作のための各種機能を備えている.ディープラーニングでも利用されている. NVIDIA 社のグラフィックス・カードが持つ GPU の機能を使うとき,NVIDIA CUDA ツールキット を利用することができる.

GPU は,グラフィックス・プロセッシング・ユニットの略で、コンピュータグラフィックス関連の機能,乗算や加算の並列処理の機能などがある.

目次

  1. NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.6.2, NVIDIA cuDNN v8.4.0 のインストールについて
  2. Build Tools for Visual Studio 2022 (ビルドツール for Visual Studio 2022)のインストール
  3. NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.6.2 のインストール手順
  4. インストール後の確認
  5. NVIDIA cuDNN v8.4.0 のインストール
  6. nvcc を動かしてみる(Build Tools for Visual Studio を利用)

サイト内の関連ページ

● YouTube 動画, 「NVIDIA ドライバ, CUDA 11.6, cuDNN 8.4 のインストール (Windows 上) 」:

YouTube 動画のURL: https://www.youtube.com/watch?v=Np1u6cFSz9E

ドクセルの URL: https://www.docswell.com/s/6674398749/KJ62N5-2022-04-19-133927

GPU

GPUは,グラフィックス・プロセッシング・ユニット(Graphics Processing Unit)の略である.3次元コンピュータグラフィックスや3次元ゲーム,動画編集,仮想通貨のマイニング,科学計算,ディープラーニングなど,並列処理が必要な幅広い分野で活用されている.

NVIDIA CUDA ツールキット

NVIDIA CUDA ツールキット は,NVIDIA社が提供する GPU 用のツールキットである.GPU を用いた演算のプログラム作成や動作のための各種機能を備えている.ディープラーニングでも利用されている.

サイト内の関連ページ

関連する外部ページ

NVIDIA CUDA ツールキットのインストール時の注意点

NVIDIA CUDA ツールキットの動作に必要なもの

Windows でインストールするときの注意点

NVIDIA cuDNN

NVIDIA cuDNN は, NVIDIA CUDA ツールキット上で動作するディープラーニング・ライブラリである. 畳み込みニューラルネットワークや リカレントニューラルネットワークなど,さまざまなディープラーニングで利用されている.

Windows で,NVIDIA cuDNN の利用時に 「Could not locate zlibwapi.dll. Please make sure it is in your library path!」と表示されるときは, ZLIB DLL をインストールすること.

関連する外部ページ

NVIDIA cuDNN のインストール時の注意点

NVIDIA cuDNN の動作に必要なもの

NVIDIA ドライバ

NVIDIA ドライバは,NVIDIA 社製の GPU を動作させるのに必要なドライバである.次の NVIDIA の公式サイトからダウンロードできる.ダウンロードのときは,使用しているオペレーティングシステムとGPUに適したものを選ぶこと.

関連する外部ページ

NVIDIA ドライバのダウンロードの公式ページ: https://www.nvidia.co.jp/Download/index.aspx?lang=jp

TensorFlow GPU 版

Tensorflowは,Google 社によりリリースされた強力な機械学習フレームワークである.Python,C/C++ 言語から利用することができ,CPU,GPU,TPU 上で動作する.TensorFlow の特徴の一つは,「データフローグラフ」という概念である.データフローグラフは,データの流れを定めるもので,グラフ内の節点はオペレーション(演算)であり,エッジは節点間を流れるデータ(テンソル)を表す.ここでいう「オペレーション(演算)」は,TensorFlow が提供する様々な処理の単位である.TensorFlow を使うことで,機械学習のアプリケーションをより簡単に作成することができるようになる.TensorFlow は,音声,画像、テキスト,ビデオなど,様々なタイプのデータを利用できる.TensorFlow は,2015年11月に最初のバージョンがリリースされた.

TensorFlow GPU 版の動作に必要なもの(2023年4月時点)

古いバージョンである2.4.4 あるいはそれ以前のバージョン のTensorFlow を使う場合は, 最新NVIDIA cuDNNを使わないこと. 詳しくは,別ページ »で説明

Build Tools for Visual Studio 2022(ビルドツール for Visual Studio 2022)

Build Tools for Visual Studio 2022(ビルドツール for Visual Studio 2022)は, Windows上で動作するMicrosoftのC++コンパイラーであり、プログラムのソースコードから実行可能なプログラムやライブラリを生成するためのツールである.

コンパイラ,リンカ,ランタイムライブラリなどが含まれており,32ビットと64ビットの両方で動作する. これらのツールはコマンドラインで使用される. NVIDIA CUDA ツールキットの利用時にも役立つ.

C++プログラムを64ビットでコンパイルする手順は以下の通りである.

また,fopen関数を使用する場合は、C++ソースコードの先頭に「#pragma warning(disable: 4996)」を追加する必要がある。

x64 Native Tools Command Promptコマンドプロンプトの機能も持っている. Visual Studioは機能が豊富だが,Visual Studioのビルドツール(Build Tools)の機能しか使用しない場合は,ビルドツール(Build Tools)だけを単独でインストールすることができる.

サイト内の関連ページ

Windows での ビルドツール for Visual Studio 2022 (Build Tools for Visual Studio 2022) のインストール: 別ページ »で説明している.

関連する外部ページ

Build Tools for Visual Studio 2022 (ビルドツール for Visual Studio 2022)の公式ダウンロードページ: https://visualstudio.microsoft.com/ja/visual-cpp-build-tools/

Build Tools for Visual Studio 2019 (ビルドツール for Visual Studio 2019)のインストール

Build Tools for Visual Studio 2019 は,Windows で動くMicrosoft の C++ コンパイラーである.

Visual Studio を使う予定がある場合

Windows での Visual Studio Community 2019 のインストール: 別ページ »で説明している.

Visual Studio Community 2019 に, Build Tools for Visual Studio 2019の機能が含まれている.

Visual Studio を使う予定がない場合

Build Tools for Visual Studio 2019 のインストールを行う.

関連する外部ページ

インストール手順

  1. ダウンロード URL を開く

    https://visualstudio.microsoft.com/ja/downloads/

  2. このページの下の方の「Tools for Visual Studio」を展開

    [image]
  3. Build Tools for Visual Studio 2022」の右の「ダウンロード」をクリック.

    [image]
  4. ダウンロードが始まる

    [image]
  5. ダウンロードした .exe ファイルを実行する
  6. 表示を確認し,「続行」をクリック

    [image]
  7. C++ によるデスクトップ開発」をクリック.そして,右側で「ATL」と「MFC」をインストールするようにチェックする.「インストール」をクリック.

    [image]
  8. ダウンロードとインストールが始まる

    [image]
  9. インストール終了の確認

    [image]

ビルドツール(Build Tools)の動作確認のため,プログラムをビルドしてみる

Visual Studioビルドツール(Build Tools) をコマンドラインで使いたいときは, Visual Studio の x64 Native Tools コマンドプロンプトを使う.

  1. Visual Studio の x64 Native Tools コマンドプロンプトを開く.

    Windows のスタートメニューで「Visual Studio 2022」の下の「x64 Native Tools Command Prompt for VS 2022」で起動する.(あるいは類似のものを探す).「x64」は,64ビット版の意味である.

    以下の操作は,x64 Native Tools コマンドプロンプトで行う

  2. cl にパスが通っていることを確認する

    エラーメッセージが出ていないことを確認.

    where cl
    

    [image]

    ※ 「cl が無い」 という場合は,次の手順で,Visual Studio Build Tools 2022C++ についての設定を行う.

    1. C++ についての設定をしたいので、Visual Studio Installer (Visual Studio インストーラー)を起動

      Windowsのスタートメニューからの起動が簡単

    2. Visual Studio Build Tools 2022 の画面で「変更」をクリック
    3. C++ によるデスクトップ開発」をチェック.そして,画面右側の「インストール」の詳細で「v143 ビルドツール用 C++/CLI サポート(最新)」をチェックする.その後,「インストール」をクリック.
    4. インストールが始まる.しばらく待つ.
  3. コンパイラの動作確認

    まず,エディタを開く. ここではメモ帳 (notepad) を使っている.

    x64 Native Tools コマンドプロンプト で,次のコマンドを実行する. ファイル名は hello.c としている.

    c:
    cd %HOMEPATH%
    notepad hello.c
    

    [image]
  4. いまメモ帳で開いたファイルを, 次のように編集する(コピー&ペーストしてください).そして保存する.
    #include<stdio.h>
    int main() {
        printf("Hello,World!\n");
        printf("sizeof(size_t)=%ld\n", sizeof(size_t));
        return 0;
    }
    

    [image]
  5. 次のコマンドを実行

    x64 Native Tools コマンドプロンプトを使うこと.

    結果として,「Hello,World!」「sizeof(size_t)=8」と表示されればOK.

    del hello.exe
    cl hello.c
    .\hello.exe
    

    実行結果例

    [image]

NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.6.2 のインストール手順

NVIDIA ドライバのインストール(Windows 上)

NVIDIA ドライバは、NVIDIA 社製の GPU(グラフィックス・プロセッシング・ユニット)を動作させるためにも必要なソフトウェアである.

  1. NVIDIA グラフィックス・ボードの種類を調べる

    Windows で,NVIDIA グラフィックス・ボードの種類を調べたいときは, hwinfo (URL: https://www.hwinfo.com) を使って調べることができる.

  2. 最新NVIDIA ドライバのインストール

    NVIDIA ドライバは,以下の NVIDIA 公式サイトからダウンロードできる.ダウンロードのときに,使用しているグラフィックス・ボードとオペレーティングシステムを選ぶ.

    https://www.nvidia.co.jp/Download/index.aspx?lang=jp

    サイト内の関連ページ

    NVIDIA の公式サイトから最新の NVIDIA ドライバをダウンロードしてインストールすることとは別に,NVIDIA CUDA ツールキットに同封されている NVIDIA ドライバをインストールすることもできる.

NVIDIA CUDA ツールキット 11.6.2 のインストール(Windows 上)

NVIDIA CUDA ツールキット は,NVIDIA社が提供する GPU 用のツールキットである.GPU を用いた演算のプログラム作成や動作のための各種機能を備えている.ディープラーニングでも利用されている.

NVIDIA CUDA ツールキットのインストール時の注意点

インストール手順

  1. NVIDIA CUDA ツールキットのアーカイブのページを開く

    https://developer.nvidia.com/cuda-toolkit-archive

  2. NVIDIA CUDA ツールキットのバージョンを選ぶ

    ここでは,NVIDIA CUDA ツールキット11.6 系列の最新版を選んでいる.

    [image]
  3. Windows」,「10」,「exe [local]」を選ぶ.

    Windows 11 のときは,「11」を選んでください.

    [image]
  4. Base Installer」の右横の「Download」をクリックして,.exe ファイルをダウンロード

    [image]
  5. exe ファイルのダウンロードが始まる

    [image]
  6. ダウンロードした .exe ファイルを実行する.

    [image]
  7. 展開(解凍)先ディレクトリ(フォルダ)の指定.

    既定(デフォルト)のままでよい.「OK」をクリック.

    [image]
  8. 展開(解凍)が自動で行われるので,しばらく待つ.

    [image]
  9. ライセンス条項の確認

    [image]
  10. インストールオプションは,「カスタム(詳細)」を選び,「次へ」をクリック.

    [image]
  11. コンポーネントを確認する.

    CUDA」にチェックする.その他は,必要なものがあればチェックする.「次へ」をクリック.

    [image]
    • このとき,NVIDIA ドライバを選択することもできる(NVIDIA ドライバが未インストールであれば,インストールする).
    • 複数の版の NVIDIA CUDA ツールキットをインストールする場合には,古い版のNVIDIA CUDA ツールキットをインストールするときに「CUDA」だけを選ぶようにする.
  12. インストール場所の選択は,既定(デフォルト)のままでよい.「次へ」をクリック.

    [image]
  13. Visual Studio Integration について表示された場合

    表示されなくても問題はない.

    表示された場合には,次のように判断する.

  14. このとき,Windows セキュリティの画面が開くことがある.開いた場合には,「インストール」をクリック.
  15. インストールが始まるので,確認する.

    [image]
  16. このとき,グラフィックス・カードのドライバのインストールについての画面が表示される場合がある.「インストール」をクリックして,インストールを続行する.
  17. Visual Studio がインストール済みのときは,Nsight Visual Studio がインストールされたことが確認できる.確認したら「次へ」をクリック.

    [image]

    Visual Studio をインストールしていないときは,Nsight for Visual Studio はインストールされない.

  18. インストール終了の確認.「閉じる」をクリック.

    ※ 「コンピュータを再起動してください」と表示される場合がある.そのときは,再起動する.

    [image]
  19. NVIDIA CUDA ツールキットのインストールが終わったら,ユーザ環境変数 TEMP の設定を行う.

    Windowsユーザ名が日本語のとき,nvcc がうまく動作しないエラーを回避するためである.

    ユーザ環境変数 TEMP に「C:\TEMP」を設定するために, コマンドプロンプトで,次のコマンドを実行する.

    mkdir C:\TEMP
    powershell -command "[System.Environment]::SetEnvironmentVariable(\"TEMP\", \"C:\TEMP\", \"User\")"
    

インストール後の環境変数の確認

Windowsシステム環境変数自動で設定される

nvcc の動作確認

nvcc にパスが通っていることを確認する

Windowsコマンドプロンプトを開き,次のコマンドを実行する. エラーメッセージが出ないことを確認.

where nvcc

[image]

NVIDIA cuDNN v8.4.0 のインストール

NVIDIA cuDNN のインストール(Windows 上)

インストールの概要

Windows では,基本,NVIDIA cuDNN のインストールは,次の手順になる.

  1. zip ファイルの展開(解凍)

    Windows での展開(解凍)に便利な 7-Zip: 別ページ »で説明

  2. NVIDIA cuDNN に,パスを通す

    zip ファイルを展開したら,展開先の下の bin にパスを通す

  3. システム環境変数 CUDNN_PATH の設定. Windows では, コマンドプロンプトを管理者として開き, 次のコマンドを実行することにより, システム環境変数 CUDNN_PATH の設定を行うことができる.

    コマンドプロンプトを管理者として実行: 別ページ »で説明

    powershell -command "[System.Environment]::SetEnvironmentVariable(\"CUDNN_PATH\", \"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\", \"Machine\")"
    
  4. NVIDIA cuDNN に,パスが通っていることの確認.

    パスが通っていることの確認のため, コマンドプロンプトを開き,次のコマンドを実行する.エラーメッセージが出ないことを確認.

    where cudnn64_8.dll
    

ダウンロードとインストールの手順

  1. ZLIB DLL のダウンロードとインストール

    Windows で,コマンドプロンプト管理者として実行

    コマンドプロンプトを管理者として実行: 別ページ »で説明

    次のコマンドを実行

    v11.6」のところは,実際にインストールされている NVIDIA CUDA ツールキットのバージョンを確認し,読み替えてください.

    cd "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6\bin"
    curl -O http://www.winimage.com/zLibDll/zlib123dllx64.zip
    powershell -command "Expand-Archive -Path zlib123dllx64.zip"
    copy zlib123dllx64\dll_x64\zlibwapi.dll .
    
  2. NVIDIA cuDNN のウェブページを開く

    https://developer.nvidia.com/cuDNN

  3. ダウンロードしたいので,cuDNNのところにある「Download cuDNN」をクリック.

    [image]
  4. NVIDIA Developer Program メンバーシップに入る

    NVIDIA cuDNN のダウンロードのため.

    Join now」をクリック.その後,画面の指示に従う. 利用者本人が,電子メールアドレス,表示名,パスワード,生年月日を登録.利用条件等に合意.

    [image]
  5. ログインする

    [image]
  6. 調査の画面が出たときは,調査に応じる
  7. ライセンス条項の確認

    [image]
  8. ダウンロードしたいバージョンを選ぶ

    ここでは「NVIDIA cuDNN v8.4.0 for CUDA 11.x」を選んでいる.

    このとき,画面の「for CUDA ...」のところを確認し,使用するNVIDIA CUDA のバージョンに合うものを選ぶこと.

    [image]
  9. Windows にインストールするので Windows 版を選ぶ

    [image]
  10. ダウンロードが始まる.

    [image]
  11. ダウンロードした .zip ファイルを展開(解凍)する.展開の結果 cuda という名前のディレクトリができる.その中のサブディレクトリを確認しておく.

    Windows での展開(解凍)に便利な 7-Zip: 別ページ »で説明

    [image]
  12. NVIDIA CUDA ツールキットをインストールしたディレクトリは,「C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6」 のようになっている.確認する.

    [image]
  13. 確認したら, さきほど展開してできたディレクトリcuda の下にあるすべてのファイルとディレクトリを,NVIDIA CUDA ツールキットをインストールしたディレクトリにコピーする

    [image]
  14. パスが通っていることを確認.

    次の操作により,cudnn64_8.dllパスが通っていることを確認する.

    Windowsコマンドプロンプトを開き,次のコマンドを実行する.エラーメッセージが出ないことを確認.

    where cudnn64_8.dll
    

    [image]
  15. Windowsシステム環境変数 CUDNN_PATH の設定を行う.

    システム環境変数 CUDNN_PATH の設定のため, Windows で,コマンドプロンプト管理者として実行

    コマンドプロンプトを管理者として実行: 別ページ »で説明

  16. 次のコマンドを実行
    powershell -command "[System.Environment]::SetEnvironmentVariable(\"CUDNN_PATH\", \"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6\", \"Machine\")"
    

    [image]

nvcc を動かしてみる(Build Tools for Visual Studio を利用)

  1. C/C++ をコマンドで使いたいので,Visual Studio の x64 Native Tools コマンドプロンプトを開く.

    起動は,Windows のメニューで「Visual Studio 2022」の下の「x64 Native Tools コマンドプロンプト (x64 Native Tools Command Prompt)」を選ぶ.「x64」は,64ビット版の意味である.

    ※ 32ビットのNative Tools コマンドプロンプトでは nvcc が動かない

    以下の操作は,x64 Native Tools コマンドプロンプトで行う

  2. 確認のため,「where cl」を実行.

    エラーメッセージが出ていないことを確認.

    where cl
    

    [image]
  3. nvccの動作確認のため,

    https://devblogs.nvidia.com/easy-introduction-cuda-c-and-c/に記載のソースコードを使用. まず,エディタを開く. ここではメモ帳 (notepad) を使っている.

    x64 Native Tools コマンドプロンプト で,次のコマンドを実行する. ファイル名は hello.cu としている.

    cd %HOMEPATH%
    notepad hello.cu
    

    [image]

    その後,ファイルを編集し,ファイルを保存.

    ファイル hello.cu ができる.

    [image]
  4. ビルドと実行.

    「nvcc hello.cu」で a.exe というファイルができる. 「Max error: 0.000000」と表示されればOK.

    うまく動かないときは,まず,マイクロソフト C++ ビルドツールの動作を,別ページの手順により確認し,異常があれば,マイクロソフト C++ ビルドツールのインストールなどで対処.それでも動かないときは,NVIDIA CUDA ツールキット 11.6.2 のインストールしたときの作業に間違いがなかったかを再確認.

    del a.exe
    nvcc hello.cu
    

    [image]
    .\a.exe
    

    [image]

    うまく動かない場合がある.

    Windows で,ユーザ名が日本語を含むとき,次のように,「nvcc hello.cu」がうまく動作しない上に,エラーメッセージも出ない場合がある.

    [image]

    このときは,ユーザ環境変数 TEMP に日本語を含まないディレクトリを設定する.

    ユーザ環境変数 TEMP に「C:\TEMP」を設定するために, コマンドプロンプトで,次のコマンドを実行する.

    mkdir C:\TEMP
    powershell -command "[System.Environment]::SetEnvironmentVariable(\"TEMP\", \"C:\TEMP\", \"User\")"
    

    この設定を終わったあと,確認のため,新しくx64 Native Tools コマンドプロンプトを開き,nvcc hello.cu と .\a.exe をもう一度実行して確認する.

    nvcc hello.cu
    .\a.exe
    

    [image]

NVIDIA CUDA サンプルプログラムのビルドと実行

付属のサンプルプログラムを Visual Studio Community 2022 の C++ を用いてビルドし実行してみる.

前準備

Visual Studio Community 2022 のインストールを行う.

CUDA Samples にあるソースコードのビルド

  1. C:\ProgramData\NVIDIA Corporation\CUDA Samples\v11.6 を開く

    ここに,サンプルプログラムについての記載があるので確認する.

  2. サンプルプログラムのダウンロード
    cd "C:\ProgramData\NVIDIA Corporation\CUDA Samples\v11.6"
    git clone https://github.com/nvidia/cuda-samples
    

    [image]
  3. 自分が持っている Visual Studio のバージョンにあった sln ファイル(ソリューションファイル)を開く.

    ここでは, ソリューションファイル Samples_vs2022.slnを開いている.

    しばらく待つ

    [image]
  4. ソリューションエクスプローラーの「ソリューション 'Sample_vs2022' 」をクリックすると,下にプロパティが表示されるので確認する.

    [image]
  5. ビルドする前に、 右クリックメニューで、 「ソリューションの再ターゲット」を選ぶ.

    これは、SDK のバージョンに起因するエラーを回避するための操作

    [image]

    [image]
  6. 「ビルド」メニューを開き,「ソリューションのビルド」を選ぶ.

    [image]
  7. 画面の下にあるコンソールを見て,ビルドの終了を確認.

    ※ ビルドの終了までしばらく待つこと.

  8. プログラムができる.いくつかを実行してみる.

    プログラムの場所は C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.1\bin\win64\Debug