GPU対応(CUDA、cuDNNの導入)

Microsoft Cognitive Toolkit(CNTK)でGPUを活用するためには、CUDAおよびcuDNNを適切に導入・設定する必要があります。以下に、Windows環境を例として、GPU対応のためのステップを詳しく解説します。


1. GPU対応の前提条件

対応GPU:

  • NVIDIA製GPU(Compute Capability 3.0 以上)

対応ドライバ:

  • NVIDIA GPUドライバ(CUDAに適したバージョン)


2. CUDAの導入

2.1 CUDAのダウンロードとインストール

  1. NVIDIA CUDA Toolkit ダウンロードページ から、対応するCUDA Toolkitのバージョンを選択してダウンロードします。

    • CNTK 2.7の場合はCUDA 9.0が推奨されます。

  2. インストーラを実行し、**「カスタムインストール」**で必要なコンポーネントを選択。

    • 必須:CUDAコンパイラ、ライブラリ、サンプル、ドライバ

  3. インストール後、以下のパスを環境変数に追加します:

plaintext
CUDA_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0 Path に以下を追加: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\libnvvp

3. cuDNNの導入

3.1 cuDNNのダウンロードとインストール

  1. NVIDIA cuDNN ダウンロードページにアクセスし、CUDA 9.0対応のcuDNNをダウンロードします。

    • NVIDIA Developer アカウントが必要です。

  2. ダウンロードしたZIPファイルを展開し、以下のファイルをCUDAフォルダに手動でコピーします:

plaintext
bin\cudnn64_7.dll → C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin include\cudnn.h → C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\include lib\x64\cudnn.lib → C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\lib\x64

4. CNTKでの確認・設定

4.1 CNTKのGPUサポートバージョンをインストール

bash
pip install cntk-gpu

4.2 動作確認

以下のスクリプトを実行し、GPUデバイスが認識されているか確認します:

python
import cntk from cntk.device import gpu, try_set_default_device try_set_default_device(gpu(0)) print("Using device:", cntk.default_device())

期待される出力例:

yaml
Using device: GPU[0] GeForce GTX 1080 Ti

5. トラブルシューティング

  • GPUが認識されない場合:

    • CUDA・cuDNNバージョンの不一致

    • ドライバが古い

    • PATHCUDA_PATH環境変数の設定漏れ

  • DLL読み込みエラー:

    • cudnn64_7.dllが見つからない → binフォルダにコピーされているか確認


補足

CNTKは2019年以降公式のサポートが停止しています。現在はPyTorchやTensorFlowの方が一般的です。研究や保守目的で使用する場合は、特にCUDA/cuDNNのバージョン整合性に注意する必要があります。

生成日:2025/05/23