![](/img/trans.png)
[英]Use GPU installation of tensorflow/cuda in spyder under ubuntu 14.04
[英]Tensorflow GPU / CUDA installation on Ubuntu
我已經設置了一個 Ubuntu 18.04 並嘗試使用 Python 使 Tensorflow 2.2 GPU 工作(我有一個 Nvidia/CUDA 顯卡)。 即使在閱讀文檔https://www.tensorflow.org/install/gpu#linux_setup 之后,它也失敗了(有關它如何失敗的詳細信息,請參見下文)。
問題:您是否有一個規范的“待辦事項”列表(起點:新安裝的 Ubuntu 服務器)關於如何通過幾個步驟安裝tensorflow-gpu
並使其工作?
筆記:
我讀過很多類似的論壇帖子,我認為有一個規范的“todo”(從全新的 Ubuntu 安裝到讓tensorflow-gpu
工作)會很有趣,只需幾個步驟/bash 命令
我使用的文檔涉及
export LD_LIBRARY_PATH... # Add NVIDIA package repository sudo apt-key adv --fetch-keys http://developer.download... ... # Install CUDA and tools. Include optional NCCL 2.x sudo apt install cuda9.0 cuda...
即使經過大量的試驗和錯誤(我不會在這里復制/粘貼所有不同的錯誤,會太長),然后在最后:
import tensorflow
總是失敗。 一些原因包括`ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory。 我已經在這里閱讀了相關問題,或者這個很長的 (!) Github 問題。
經過一些反復試驗, import tensorflow
可以工作,但它不使用 GPU(另請參閱Tensorflow not running on GPU )。
好吧,我面臨着同樣的問題。 首先要做的是查找,需要哪個Tensorflow版本。 在你的情況下Tensorflow 2.2
。 需要CUDA 10.1
。 正確的 cuDNN 版本也很重要。 在您的情況下,它將是cuDNN 7.4
。 另外一點是安裝的python版本。 我會推薦Python 3.5-3.8
。 如果其中一個不匹配,則完全兼容幾乎是不可能的。
因此,如果您想要一份檢查清單,請訪問:
你可以在這里找到 Tensorflow 和 CUDA 的兼容性檢查列表
您可以在此處找到 CUDA 工具包
最終在此處獲得正確版本的 cuDNN
就這樣。
在將Google Cloud Platform用於涉及深度學習的兩個項目時,我也遇到了問題。 他們為服務器提供的只是全新安裝的Ubuntu OS。 根據我的經驗,我建議執行以下步驟:
這應該工作。 您的問題可能是您使用的是最新的cuda版本,而不是當前Tensorflow版本所針對的版本。
要安裝tensorflow-gpu,官方網站上提供的指南對於初學者來說非常繁瑣,相反,我們可以執行以下簡單步驟:
注意:在此之前必須先安裝NVIDIA驅動程序(您可以使用命令nvidia-smi進行驗證)。
用給定的代碼
import tensorflow as tf
if tf.test.gpu_device_name():
print('Default GPU Device{}'.format(tf.test.gpu_device_name()))
else:
print("not using gpu")
您可以在下面提供的鏈接上找到該教程https://www.pugetsystems.com/labs/hpc/Install-TensorFlow-with-GPU-Support-the-Easy-Way-on-Ubuntu-18-04-without-installing -CUDA-1170 / ?
我建議首先使用nvidia-smi
命令檢查 GPU 的可用性。
我遇到了同樣的問題,我能夠通過使用 docker 容器來解決它,您可以在 Ubuntu 上使用Install Docker Engine 安裝 docker或使用 Digital Ocean 指南(我使用過這個) How To Install and Use Docker on Ubuntu 18.04
之后就很簡單了,根據需求運行以下命令即可
NV_GPU='0' nvidia-docker run --runtime=nvidia -it -v /path/to/folder:/path/to/folder/for/docker/container nvcr.io/nvidia/tensorflow:17.11
NV_GPU='0' nvidia-docker run --runtime=nvidia -it -v /storage/research/:/storage/research/ nvcr.io/nvidia/tensorflow:20.12-tf2-py3
這里'0'代表GPU編號,如果你想使用多個GPU就使用'0,1,2'等等......
希望這能解決問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.