RuntimeError:cuDNNエラー:CUDNN_STATUS_EXECUTION_FAILEDソリューション



Runtimeerror Cudnn Error

pytorch gpuを実行すると、このエラーが報告されます
画像
インターネット上の多くの人々もこの問題に遭遇しています。 CUDAとcudnnのバージョンマッチングの問題だと言う人もいれば、Pytorch、CUDA、cudnnを再インストールする必要があると言う人もいます。公式サイトを読んだところ、バージョンが一致しているのですが、再インストールしても動作せず、別のシステムバージョンでインストールしても動作しません。

conv.pyファイルでエラーが報告されるたびに、CNN操作を実行するときのエラーであることがわかります。



解決策は、次のステートメントを導入することです

import torch torch.backends.cudnn.enabled = False

この文の意味は、cudnnを使用せずに加速することです。



GPU、CUDA、cudnnの関係は次のとおりです。

  • CUDAは、NVIDIAが独自のGPU用に立ち上げた並列コンピューティングフレームワークです。 NVIDIAのGPUでのみ実行でき、CUDAは、解決するコンピューティングの問題を大規模に並列化できる場合にのみ役割を果たすことができます。
  • cuDNNは、NVIDIAによって作成されたディープニューラルネットワーク用のアクセラレーションライブラリです。ディープニューラルネットワーク用のGPUアクセラレーションライブラリです。 GPUを使用してモデルをトレーニングする場合、cuDNNは必要ありませんが、このアクセラレーションライブラリが一般的に使用されます。

参照: GPU、CUDA、cuDNNの理解

デフォルトではcudnnが使用されます。現在、マッチングの問題は解決できませんので、使用しないでください。このように、GPUは引き続き機能しますが、cudnnを使用するほど高速ではない可能性があります。



起こりうるバージョンの問題を解決する方法を友達が知っているなら、コミュニケーションを歓迎します〜

添付:

  • バージョン:win10、python 3.6、pytorch 1.1.0、CUDA 9.0、cudnn 7.1.4
  • テストケース:pytorchgithubの例 基本的なMNISTの例