安装gpu版tensorflow

linux服务器安装gpu版tensorflow

本人尝试在linux服务器安装gpu版tensorflow,在此记录一下我的安装过程。

1. 确定服务器的gpu型号

1、安装gpu版tensorflow需要先安装cuda,而cuda是nvidia显卡厂商推出的运算平台。所以只有配置了nvidia的显卡的服务器才能安装gpu版tensorflow。否则只能装cpu版本的。
在服务器输入:

lspci | grep -i vga

奇怪的是只看到了Matrox(迈创)的显卡,而没有显示NVIDIA的显卡。
奇怪的是只显示了迈创的显卡,没有显示NVIDIA的显卡
于是看能不能查N卡的详细信息:

lspci | grep -i nvidia

可以看到具体的N卡型号 Tesla K40m
可以看到具体的显卡型号 Tesla K40m
2、查看nvidia的gpu计算性能
N卡的计算性能≥3.0才可以安装gpu版tensorflow,具体计算性能可查 https://blog.csdn.net/taoqick/article/details/79171199
参考:https://blog.csdn.net/wang03989/article/details/83026756

综合1+2:我的显卡是合格的。

2. NVIDIA驱动安装

根据以上所查N卡型号,选择驱动,https://www.nvidia.cn/Download/index.aspx?lang=cn
在这里插入图片描述
安装方式,网上有详述,笔者装的时候,显卡已经装了驱动,在此不说。
验证是否安装成功:

nvidia-smi

如下显示了详细的nidia显卡信息和使用情况,即表明驱动安装成功。记住下表中的驱动版本号 367.48,这个信息后面选CUDA需要用到。

注意:笔者安装的时候,由于 Tesla K40m选择的驱动,默认同时安装了cuda8.0,和cudnn??,所以后续应该是不需要了??(笔者后面检查全部安装了,也不知道是不是课题组其他人之前安装的)。只需要验证是否安装成功即可。其他的版本,按下面继续操作。

3. CUDA选择与安装

3.1 CUDA选择

https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/#overview中有下表可以查看安装对应的CUDA版本
在这里插入图片描述
根据上面驱动版本号 367.48,应选择CUDA8.0(8.0.44),8.0的对应有两个版本,后续页面可以看到,此版本会写作CUDA8.0(GA1)
https://developer.nvidia.com/cuda-toolkit-archive选择对应版本CUDA8.0(GA1)
在这里插入图片描述
接着会跳到另一个界面,令人痛苦的选择又开始了,CUDA的选择又与操作系统、架构、操作系统版本有关
在这里插入图片描述

3.2 查看操作系统架构、发行版本来选择CUDA

一步步来,首先,操作系统是Linux的,这很好选,但Architecture(架构)是什么呢?

3.2.1 查操作系统架构Architecture

1 、一般输入:

dmidecode | grep "Product"

但是我的输入后查不到
在这里插入图片描述
2、再做尝试输入:

uname -a

3、或者:

uname -r

就查到了信息,可能是服务器型号不同吧,浪潮系列的也许可以用第一个代码查到,我的是Sun Microsystems研发操作系统 solaris?所以只能用第二个查?
在这里插入图片描述
上图可知Architecture处应该选择X86_64,也可看到对应linux的Distribution(发行版本)是Debian 3.16.43-2,而选项中并没有对应Debian的,但可以选择按 Ubuntu16.04 来选择。

4、也可以输入:(此命令只适合于ubuntu和debian的发行版)

dpkg --print-architecture

下图显示为64位,amd64即为x86_64
在这里插入图片描述

3.2.2 查操作系统的发行版本Dstribution

上面在查操作系统架构时,已经显示了发行版本。然而对于有些版本,在以上命令中,可能不会显示出来,这时可以输入:

lsb_release -a

图中可以看到具体的发行版本信息:
在这里插入图片描述

3.2.3 下载安装方式的选择

选择runfile(local)本地安装方式,下载到对应安装位置。按下图提示run就可以了。
在这里插入图片描述

3.3 CUDA安装

1、在安装界面中,可参照下图进行选择。记住第二个一定选择no:
在这里插入图片描述
2、添加环境变量,安装结束后,在管理员用户根目录下,找到.bashrc文件并打开,在最后添加下面三行文本,保存退出即可
在这里插入图片描述
3、测试安装是否成功:
重启终端后输入:

nvcc -V

若显示以下信息,则安装成功:
在这里插入图片描述

4. 安装cudnn

4.1 选择cudnn版本

1、cuDNN是做深度学习必备的库,但是下载时候需要注册用户才能下载,而且网页速度较慢,建议从CSDN上找资源来下载。cuDNN的各种版本可以从 https://developer.nvidia.com/rdp/cudnn-archive 这里下载cuDNN各个版本。

2、 cuDNN下载之后是个压缩包,解压后文件夹名也为cuda(并非上面安装的cuda文件夹)里面包含头文件夹cuda/include和封装好的库cuda/lib64,按下面的方式拷贝:(以下usr/local/cuda是上面的cuda的安装路径,建议cudnn下载在另外位置,然后进入此文件位置,再按下图解压、复制等操作)

3、注意事项:
仔细看完下面的注意事项再操作
a)下载后,如果压缩包不是.tgz格式,请将其重命名为.tgz格式。
b)有的博客说有软链接的问题,可能是有的安装方法并不将解压后的lib64复制到cuda的lib64文件夹下,而是直接链接过去。
参考: https://blog.csdn.net/lucifer_zzq/article/details/76675239
c)如果安装过别的版本的cudnn,因不兼容问题,还应将其他版本的libcudnn.*文件删除。
https://blog.csdn.net/ture_dream/article/details/52677619
https://www.cnblogs.com/alexanderkun/p/6908191.html
d)还有重置cudnn.h的读写权限问题
https://www.cnblogs.com/go-better/p/7625541.html
https://blog.csdn.net/lucifer_zzq/article/details/76675239
网上说法各不相同,我也挺懵的,大家还是按照实际操作为准。
以下sudo为mac操作系统,linux的操作系统去掉sudo即可
在这里插入图片描述

4.2 测试cudnn是否安装成功

输入:

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

显示版本号为cudnn 6.0.21
在这里插入图片描述

5 安装tensorflow

准备:先安装python,再安装annocoda和包管理器、环境配置等,这些网上都有教程。
有pip的可以直接输入:

pip install tensorflow-gpu

测试:
参考
https://blog.csdn.net/taoqick/article/details/79171199

6 困惑

6.1 是否装好了?

本人用pip装后,import tensorflow直接报错,即原来的cpu版都用不了了,gpu版也没用不了。于是pip uninstall将其卸载。

今天想起我的环境也可以用conda装包,于是试了下conda install tensorflow-gpu,装好后 import tensorflow,可以继续执行,conda list 命令的列表中两种版本的tensorflow都包含,也许装好了?
在这里插入图片描述
在这里插入图片描述
从上图conda list可以看到,cuda版本为9.2,cudnn版本为7.2.1,与之前所查不一样。
分析原因,可能是:
①课题组服务器是一个账号下分为多个子账号使用,根目录下装有python和pip装包集成工具,和tensorflow。不同的人子账户下又各自安装了自己的环境,且版本各不相同。也许以上查看到的都是根目录下的版本。其中有些命令可能查的是所有的。
②我自己的账户下装了anaconda,也许我子账户的装包命令是conda?
③还有就是软链接的问题,查到的cudnn版本为6.0.21,也许是指向cudnn7.2.1的。这个没有太弄明白,详见:
https://blog.csdn.net/qq_40549291/article/details/82773269

6.2 驱动版本与cuda的实际版本

令笔者困惑的另外一点是,按照我的N卡型号 Tesla K40m来选择,如果cuda toolkit选择8.0,则所推荐的驱动版本为384.66,但为何我查到的确是 367.48?按照 conda list来看,cuda有不是8.0版本,而是9.2。而且如果选择cuda9.2版本,对应得到推荐的驱动应该是396.82,也不应该是查到的367.48
https://www.nvidia.cn/Download/index.aspx?lang=cn
在这里插入图片描述

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值