Tensorflow: Cannot dlopen some GPU libraries. Skipping registering GPU devices...

Cannot dlopen some GPU libraries. Skipping registering GPU devices…

很久沒搞Tensorflow了,又出了一些問題,這裏作個備份

可能的問題爲:

1,cuda和安裝的tensorflow版本不對應

可參考:Tensorflow與cuda版本對應關係

2, 未成功加載cuda的動態庫,可通過代碼如下測試

import tensorflow as tf
tf.test.gpu_device_name()

如果出現如下錯誤:

2020-05-26 13:41:11.299037: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Could not dlopen library 'libcudart.so.10.0'; dlerror: libcudart.so.10.0: cannot open shared object file: No such file or directory
2020-05-26 13:41:11.299176: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Could not dlopen library 'libcublas.so.10.0'; dlerror: libcublas.so.10.0: cannot open shared object file: No such file or directory
2020-05-26 13:41:11.299257: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Could not dlopen library 'libcufft.so.10.0'; dlerror: libcufft.so.10.0: cannot open shared object file: No such file or directory
2020-05-26 13:41:11.299336: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Could not dlopen library 'libcurand.so.10.0'; dlerror: libcurand.so.10.0: cannot open shared object file: No such file or directory
2020-05-26 13:41:11.299413: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Could not dlopen library 'libcusolver.so.10.0'; dlerror: libcusolver.so.10.0: cannot open shared object file: No such file or directory
2020-05-26 13:41:11.299490: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Could not dlopen library 'libcusparse.so.10.0'; dlerror: libcusparse.so.10.0: cannot open shared object file: No such file or directory

可能是未配置 LD_LIBRARY_PATH

vim ~/.bashrc

打開 .bashrc 並在尾部添加如下代碼(cuda版本改爲你自己的,這裏是9.2)

export LD_LIBRARY_PATH="/usr/local/cuda-9.2/lib64:$LD_LIBRARY_PATH" 

然後使其生效

source ~/.bashrc

3,其他可參考

tensorflow運行使用CPU不使用GPU

附:cudnn安裝方法

sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
cd /usr/local/cuda/lib64
sudo ln -sf libcudnn.so.7.6.3 libcudnn.so.7
sudo ln -sf libcudnn.so.7 libcudnn.so
sudo ldconfig

參考:Ubuntu:安裝cudnn10.1

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章