安装tensorflow-gpu1.14

1.创建环境

conda create -n tf_1.14 python=3.6

激活自己的环境

source activate tf_1.14 

2.查看服务器安装的cuda和cudnn版本

注意:cuda和cudnn版本需要tensorflow-gpu1.14相对应。
安装tensorflow-gpu1.14_第1张图片
2.1查看cuda版本
(1)通过命令查看:nvcc -V 或者是nvcc --version都可以,但前提是添加了环境变量

(2)通过文件查看:cat /usr/local/cuda/version.txt

得到cuda版本是10.1 ,而tensorflow1.14对应的是10,接下来我会安装cuda10.0

2.2查看 cuDNN 版本

cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

如果没有,那么可能没有安装 cuDNN,需要下载安装。

  • 我安装的是Download cuDNN v7.4.1 (Sept 28, 2018), for CUDA 10.0

在这里插入图片描述

3.下载安装cuda和cudnn

3.1 下载安装cuda10.0

如果cuda版本未对应,可以删除线格式 利用pytorch来安装想要的cuda版本
[找好pytorch与cuda的对应关系] (https://pytorch.org/get-started/previous-versions/)
conda install pytorch1.2.0 torchvision0.4.0 cudatoolkit=10.0 -c pytorch
cuda下载地址
安装tensorflow-gpu1.14_第2张图片

sudo sh cuda_10.0.130_410.48_linux.run

开始安装,出现非常长的用户协议,别一点点按回车,要按非常久,直接按q退出

安装选项按下面操作:
![(https://img-blog.csdnimg.cn/6de0adbfa13046f98bf21adb55c0117b.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5ZOq6YO96YCa5Li05pe25ZGY5bel,size_12,color_FFFFFF,t_70,g_se,x_16)
安装tensorflow-gpu1.14_第3张图片
以下是安装选项解答,可跳过。

Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 410.48?
(y)es/(n)o/(q)uit: n
#问要不要安装显卡驱动,建议使用独立下载的相应的显卡驱动安装,这个驱动是公用版的,而且不是最新的,可能有问题。
Install the CUDA 10.0 Toolkit?
(y)es/(n)o/(q)uit: y
#问要不要安装CUDA10.0
Enter Toolkit Location
[ default is /usr/local/cuda-10.0 ]: 
#问CUDA的安装路径,回车即代表使用默认地址,也可以输入你想指定的路径。
Do you want to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit: y
#问是否建立软链接,一般选y。
#但如果你是安装多版本CUDA,而这是第二个,就可以自己决定要不要建立了。
Install the CUDA 10.0 Samples?
(y)es/(n)o/(q)uit: n
#问要不要安装CUDA项目实例,一般选n,没啥用还占地方。

3.2.安装cuDNN

点击在官网下载cuDNN

由于官网下载要求先注册Nvidia,比较麻烦,可以参考:

绕过Nvidia官方要求的注册或登陆步骤直接下载cuDNN的方法
安装tensorflow-gpu1.14_第4张图片
tensorflow 2.x不再区分是否gpu,当检测到gpu并安装cuda后,会自动调用gpu。若要使用cpu,可用tensorflow-cpu。

3.3.配置环境变量

执行命令

 vim ~/.bashrc

增加环境变量

export CUDA_HOME=/usr/local/cuda
export PATH=$PATH:$CUDA_HOME/bin
export LD_LIBRARY_PATH=/usr/local/cuda/lib64

使环境变量生效

source ~/.bashrc

注意:激活环境变量会回到外部环境,要激活自己的环境tf_1.14

4.安装tensorflow-gpu1.14

如果是为了使用 PyTorch/TensorFlow,在 Linux 服务器上推荐使用 conda 安装,使用 conda 可以很方便安装 PyTorch/TensorFlow 以及对应版本的 CUDA 和 cuDNN。

安装用pip指令的话会出现很多奇怪的问题。用conda指令安装的过程比较缓慢,需要耐心等待。

conda install tensorflow-gpu==1.14.0

5.安装tensorflow-gpu1.14对应keras

参考链接

pip install keras==2.2.5

安装tensorflow-gpu1.14_第5张图片

6.检查是否安装成功

6.1查看cuda版本

nvcc -V
cat /usr/local/cuda/version.txt

6.2查看 cuDNN 版本

cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

6.3查看cpu、gpu可使用设备情况

from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())

6.4查看tensorflow-gpu是否能正常使用

import tensorflow as tf

print(tf.__version__)  
print(tf.__path__)     

a = tf.test.is_built_with_cuda()  
b = tf.test.is_gpu_available(
    cuda_only=False,
    min_cuda_compute_capability=None
)  

print(a) 
print(b) 


if tf.test.gpu_device_name():
    print('Default GPU Device: {}'.format(tf.test.gpu_device_name()))
else:
    print("Please install GPU version of TF")

7.疑难解答

7.1 Could not dlopen library 'libcudnn.so.7’

到cuda的lib64目录,默认的是/usr/local/cuda/lib64,找到自己安装的cudnn的版本对应的ibcudnn.so

建立软链接( 或者直接把libcudnn.so.7.4.1改名为libcudnn.so.7)

sudo ln -sf libcudnn.so.7.4.1 libcudnn.so.7

加载动态库

sudo ldconfig /usr/local/cuda/lib64

7.2、libcudnn.so.7 is not a symbolic link

找不到软链接,到cuda的lib64目录,默认的是/usr/local/cuda/lib64,建立软链接

cd /usr/local/cuda/lib64
sudo ln -sf libcudnn.so.7 libcudnn.so

7.3 安装多版本CUDA

假设都是默认的安装路径/usr/local/,现在安装了两个版本的CUDA

/usr/local/cuda-10.0
/usr/local/cuda-10.1

查看当前cuda软链接指向的是哪个版本

stat /usr/local/cuda

切换版本

建立需要切换版本的软链接,替换现有的软链接

sudo ln -sf /usr/local/cuda-10.1 /usr/local/cuda

你可能感兴趣的:(tensorflow,问题集锦,linux,cuda,tensorflow,anaconda,深度学习)