バックグラウンド
最近コンピューターを交換したため、新しいコンピューターで Tensorflow の動作環境を再構成する必要があります。最新バージョンを使用するという原則に沿って、公式ガイドに従って CUDA、cuDNN などをインストールして構成します。現時点でインストールした最新バージョンは 2.11.0. テストの結果、tensorflow は GPU を使用できません。
GPU を使用できるかどうかをテストするコード:
import tensorflow as tf
gpus = tf.config.experimental.list_physical_devices(device_type='GPU')
cpus = tf.config.experimental.list_physical_devices(device_type='CPU')
print(gpus, cpus)
プログラムを実行した結果は次のとおりです。
[] [PhysicalDevice(name='/physical_device:CPU:0', device_type='CPU')]
どうやら tensorflow は GPU を見つけず、CPU だけを見つけます。
以下は、公式ウェブサイトで提供されているインストール チュートリアルです。
公式リンク: pip を使用して TensorFlow をインストールする
- 仮想環境に pip を使用して tensorflow をインストールする
pip install tensorflow
- 次に、関連するソフトウェアを構成します
- NVIDIA® GPU ドライバー- CUDA® 11.2 には 450.80.02 以降が必要です。
- CUDA® Toolkit : TensorFlow は CUDA® 11.2 (TensorFlow 2.5.0 以降) をサポートします。
- CUPTI はCUDA® Toolkit に含まれています。
- cuDNN SDK 8.1.0 cuDNN バージョン。
- (オプション) TensorRT 6.0。これにより、レイテンシが短縮され、一部のモデルでの推論のスループットが向上します。
- 環境変数の構成 インストール
されている NVIDIA パッケージが上記のバージョンと一致していることを確認してください。特に、TensorFlow は cuDNN64_8.dll ファイルがないと読み込みに失敗します。他のバージョンについては、Windows ガイドでのソースからのビルドを参照してください。CUDA®、CUPTI、および cuDNN インストール ディレクトリを %PATH% 環境変数に追加します。たとえば、CUDA® ツールキットが C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0 にインストールされ、cuDNN が C:\tools\cuda にインストールされている場合は、パスに一致するように %PATH% を更新します。
SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\bin;%PATH%
SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\extras\CUPTI\lib64;%PATH%
SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\include;%PATH%
SET PATH=C:\tools\cuda\bin;%PATH%
問題が解決しました
tensorflow 版は 2.x から CPU 版と GPU 版を区別しなくなったので、ソフトウェアの構成が正しければ GPU デバイスを見つけることができるはずです。公式サイトのチュートリアルに沿って、各ソフトウェアのバージョンや環境変数などに誤りがないことを繰り返し確認しましたが、問題は解決しません。
公式 Web サイトの言語を英語に変更すると、次のようなプロンプトが表示されました (中国語版の Web ページにはありません):
このプロンプトによると、Tensorflow 2.10 は、ローカル Windows で GPU をサポートする最後のバージョンです。バージョン 2.11 以降、GPU を使用するには Windows WLS2 (Windows Subsystem for Linux) にインストールする必要があります。したがって、native-windows で GPU を使用するには、バージョン 2.10.0 以下のみをインストールするか、古いバージョンの tensorflow-gpu をインストールする必要があります。
そこで、以前にインストールした 2.11.0 バージョンをアンインストールし、2.10.0 バージョンをインストールしました。
pip install tensorflow==2.10.0
次に、GPU が使用できるかどうかをテストします。GPU
が見つからないという問題が解決されていることがわかります。