在使用GPU來執行keras或tensorflow時,
在安裝環境的時候時常會遇到 :
“ ImportError: libcublas.so.8.0: cannot open shared object file: No such file or directory “
這個原因是因為tensorflow-gpu版本對應不上 cuda 的版本
有兩個可以解決的方法:
- 降低 tensorflow-gpu 版本 : pip install tensorflow-gpu==1.4.0
- 提高 cuda 的版本 : yum install cuda-8-0
Tensorflow-gpu, Cuda, CuDNN , 這些套件之間有版本上的限制, 以下為教導如何查詢這些套件在電腦上的版本, 以及說明其之間版本的對應, 再來看看如何確認是否安裝成功。
查詢套件在電腦上的版本
cuda version
1 | $ nvcc --version |
or1
$ cat /usr/local/cuda/version.txt
CuDNN version
1 | $ cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2 |
tensorflow-gpu version
1 | $ pip list | grep tensorflow |
相對應的版本清單
確認是否安裝成功
以下這段程式碼會列出tensorflow抓的到的 CPU 和 GPU 資源
#python
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
如下圖, 要是有順利抓到GPU,表示安裝成功,已經可以使用GPU來執行程式了~~~
Reference
[1] stackoverflow
Comments