解決 Could not load dynamic library 'libcudart.so.10.0

先說我目前的環境:
環境:UBUNTU 18.04.2 LTS
CPU:i9-9820X
記憶體:16G+16G
主機板:Gigabyte X299 AORUS MASTER (rev1.0)
顯卡:MSI 2080 Ti SEA HAWK X
安裝驅動:nvidia-driver-435
安裝CUDA版本:CUDA 10.1
(環境建立方法: https://ubuntu1804.blogspot.com/2019/04/ubuntu-rtx-2080ti-418cuda101-cudnn-75.html

在用cuda10.1的環境訓練keras gan神經網路,一直都沒有問題

不過import tensorflow進去,compile之後就跳出這個Could not load dynamic library 'libcudart.so.10.0錯誤,並且自動切換成CPU去跑了。

查了不少資訊後發現是tensorflow版本跟cuda版本對應不起來導致的。

在這邊的作法是我選擇降cuda版次去符合目前tensorflow-gpu的版本(version=1.12.0)

降版次的主要原因是手邊有ZED Stereo Camera需要對應使用cuda9.2去跑,故選擇降到這個版次,並將tensorflow-gpu版本安裝成1.12.0

安裝cuda的方法就不再贅述了,上面的連結有教如何安裝cuda。
(注意:本來有cuda10.1的人不需要移除,直接安裝cuda9.2就可以了。請將對應的資料夾改成cuda9.2,自然就可以轉換cuda的版本)

安裝cuda9.2( cuda_9.2.148_396.37_linux.run,更新包cuda_9.2.148.1_linux.run),記得cudaNN的版本要對應到7.2.1.38 (cudnn-9.2-linux-x64-v7.2.1.38.tgz),切記切記。
(下載網址:https://developer.nvidia.com/rdp/cudnn-archive

安裝完CUDA後記得在自己的python的環境底下安裝pip install tensorflow-gpu==1.12.0

基本上就可以解決Could not load dynamic library 'libcudart.so.10.0的問題了

PS:以上所安裝的東西,版本都不可以選錯

參考 reference:

https://github.com/tensorflow/tensorflow/issues/26209

https://github.com/tensorflow/tensorflow/issues/26209

留言

熱門文章