2017-01-24 143 views
0

我已經安裝tensorflow的GPU版本,但是當我嘗試導入它,我收到以下錯誤信息:Tensorflow GPU Ubuntu安裝16.04錯誤(libcuda.so未找到)

I tensorflow/stream_executor/dso_loader.cc:125] successfully opened CUDA library libcublas.so.8.0 locally 
I tensorflow/stream_executor/dso_loader.cc:125] successfully opened CUDA library libcudnn.so.5 locally 
I tensorflow/stream_executor/dso_loader.cc:125] successfully opened CUDA library libcufft.so.8.0 locally 
I tensorflow/stream_executor/dso_loader.cc:116] Couldn't open CUDA library libcuda.so.1. LD_LIBRARY_PATH: usr/local/cuda-8.0/lib64 
I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:165] hostname: sep-GS60-2QE 
I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:189] libcuda reported version is: Not found: was unable to find libcuda.so DSO loaded into this program 
I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:193] kernel reported version is: Permission denied: could not open driver version path for reading: /proc/driver/nvidia/version 
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1066] LD_LIBRARY_PATH: usr/local/cuda-8.0/lib64 
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1067] failed to find libcuda.so on this system: Failed precondition: could not dlopen DSO: libcuda.so.1; dlerror: libnvidia-fatbinaryloader.so.367.57: cannot open shared object file: No such file or directory 
I tensorflow/stream_executor/dso_loader.cc:125] successfully opened CUDA library libcurand.so.8.0 locally 

我也跟着安裝來自tensorflow網站的指導,並確保我已正確安裝Cuda和CudNN。

我已經嘗試創建從我在系統中找到的libcuda.so到NVIDIA網站上其他帖子上建議的cuda目錄的sym鏈接,但它們沒有幫助。

我也設置在〜/ .bashrc的參數export LD_LIBRARY_PATH="usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}"export CUDA_HOME="/usr/local/cuda"但仍沒有運氣:(。

這將是最有幫助的,如果有人可以幫助我得到這個排序,因爲它是一個重要組成部分我的項目在我的GPU上運行的代碼。

+1

您是否確實擁有NVIDiA GPU並安裝了驅動程序? – talonmies

+0

是的,我喜歡。我也檢查過我的GPU是否與Tensorflow兼容。 – Rebecca

回答

1

有一個在你鍵入的LD_LIBRARY_PATH一個錯字,並tensorflow閱讀。我看到你有usr/local/cuda...代替/usr/local/cuda(請注意,在路徑的開始/

Usuall對於我來說,使用nvidia的runfile安裝程序安裝cuda後,以下LD_LIBRARY_PATH就足夠了。 export LD_LIBRARY_PATH=/usr/local/cuda:/usr/local/cuda/lib64:$LD_LIBRARY_PATH

+1

的確,該路徑存在拼寫錯誤,但是:1.該路徑上的其他庫已成功找到,並且2. libcuda.So不在該路徑上。它由驅動程序安裝程序單獨安裝。 –

+0

由於@RobertCrovella提到它確實找到了其他庫,但沒有找到Libcuda.so,確實文件不在路徑中,但我已經運行了命令'sudo find/usr/-name'libcuda.so.1'它需要的各種libcuda.so#,找到並在那條路徑中爲它們創建了一個sym-link。 – Rebecca