TensorFlow 2.0 Linuxのエラーのために使用している場合:(低cuDNN版)
E tensorflow/stream_executor/cuda/cuda_dnn.cc:319] Loaded runtime CuDNN library: 7.4.1 but source was compiled with: 7.6.0. CuDNN library major and minor version needs to match or have higher minor version in case of CuDNN 7.0 or later version. If using a binary install, upgrade your CuDNN library. If building from sources, make sure the library loaded at runtime is compatible with the version specified during compile configuration.
...
tensorflow.python.framework.errors_impl.UnknownError: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above. [Op:Conv2D]
回避策:cuDNNをアップグレードします。TF 2.0およびCUDA 10.0、cuDNN 7.6.4が一致しています。
rootユーザー
Linuxサーバのユーザがroot権限を持っている、元cuDNNを削除し、新しいバージョンを再インストールした場合。
既存のcuDNNを削除します。
sudo rm -rf /usr/local/cuda/include/cudnn.h
sudo rm -rf /usr/local/cuda/lib64/libcudnn*
CUDAファイルcuDNNエキスフォルダを入力した後、新しいバージョンをインストールします。
sudo cp include/cudnn.h /usr/local/cuda/include/
sudo cp lib64/lib* /usr/local/cuda/lib64/
:()は、例えば、7.6.4バージョンへの柔軟な接続を確立します
cd /usr/local/cuda/lib64/
sudo chmod +r libcudnn.so.7.6.4
sudo ln -sf libcudnn.so.7.6.4 libcudnn.so.7
sudo ln -sf libcudnn.so.7 libcudnn.so
sudo ldconfig
非rootユーザー
あなたがroot権限を持っていない場合は、自分自身の練習は、CUDAとcuDNNを再インストール。
CUDAは、ユーザーのディレクトリにインストール
公式サイトからhttps://developer.nvidia.com/cuda-10.0-download-archiveダウンロードUbuntuのは、インストール手順を使用しcuda_10.0.130_410.48_linux.run sh cuda_10.0.130_410.48_linux.run
そして、:
# 按q退出协议说明.
Do you accept the previously read EULA?
accept/decline/quit: accept
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 410.48?
(y)es/(n)o/(q)uit: no
Install the CUDA 10.0 Toolkit?
(y)es/(n)o/(q)uit: yes
# 改成自己的用户名
Enter Toolkit Location
[ default is /usr/local/cuda-10.0 ]: /home/wuliyttaotao/cuda-10.0
Do you want to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit: n
Install the CUDA 10.0 Samples?
(y)es/(n)o/(q)uit: y
# 使用默认路径,回车
Enter CUDA Samples Location
[ default is /home/wuliyttaotao ]:
設定cuDNN
(にcuDNNエキス:CUDA cuDNNのインストールディレクトリにファイルをコピーし~/cuda
たディレクトリ、および~/cuda-10.0
、それ自体がCUDAのインストールディレクトリを設定~
/ホーム/ wuliyttaotaoに代わって)
cp ~/cuda/include/cudnn.h ~/cuda-10.0/include
cp ~/cuda/lib64/lib* ~/cuda-10.0/lib64
chmod a+r ~/cuda-10.0/include/cudnn.h ~/cuda-10.0/lib64/libcudnn*
ソフトの接続を確立します。
cd ~/cuda-10.0/lib64
ln -sf libcudnn.so.7.6.4 libcudnn.so.7
ln -sf libcudnn.so.7 libcudnn.so
ldconfig -v
ユーザー環境変数を設定します
変更し~/.bashrc
たファイルを、次の2行はリストに追加されます:(自分のユーザー名を変更wuliyttaotao)
export PATH=/home/wuliyttaotao/cuda-10.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/home/wuliyttaotao/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
保存~/.bashrc
ファイル、source ~/.bashrc
効果にそれを置きます。
リファレンス
Linuxは、方法をアップグレードcudnn - ZONG_XP
バージョンとLinux CUDA cuDNN(CUDA 8、CUDA 10.1、等)で複数の非ルート・インストール-カジュアルを集め泡立て器