CentOS7.3安装NVIDIA-1080ti驱动、cuda、cudnn、TensorFlow
本文为作者原创,转载请注明出处(http://www.cnblogs.com/mar-q/)by 负赑屃
Ubuntu非要换centOS。。。好吧。。。
看了很多是通过ELRepo源安装驱动,不过我没有成功,只是通过它的步骤检测了显卡驱动型号。
0、安装gcc
yum -y install gcc-c++
此处是重点:如果有之前的NVIDIA驱动请先卸载,而且,要先装cuda再装驱动。。。你也可以按照我的步骤来,最后再重装一次驱动。
1、检测显卡驱动及型号
##添加ELPepo源
$ sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org $ sudo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
##安装NVIDIA驱动检测
$ sudo yum install nvidia-detect $ nvidia-detect -v
两块显卡驱动都是384.59
登录NVIDIA官网http://www.geforce.cn/drivers设置驱动检索条件(注意尽量设置语言英文):
检索结果出现384.59,点击下载获取下载链接http://us.download.nvidia.com/XFree86/Linux-x86_64/384.59/NVIDIA-Linux-x86_64-384.59.run
ssh到服务器,下载驱动:
$ cd ~/downloads $ wget -r -np -nd http://us.download.nvidia.com/XFree86/Linux-x86_64/384.59/NVIDIA-Linux-x86_64-384.59.run
可能需要sudo权限,建议通过su root直接到root账户下执行安装。安装过程中选择“Accept”,并且会询问是否要配置启动参数,选择“yes”。
2、显卡冲突
因为NVIDIA驱动会和系统自带nouveau驱动冲突,执行命令查看该驱动状态:
$ lsmod | grep nouveau
修改/etc/modprobe.d/blacklist.conf 文件,以阻止 nouveau 模块的加载,如果系统没有该文件需要新建一个,这里使用root权限,普通用户无法再在/etc内生成.conf文件。
$ su root # echo -e "blacklist nouveau\noptions nouveau modeset=0" > /etc/modprobe.d/blacklist.conf
3、 重新建立initramfs image文件
# mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak # dracut /boot/initramfs-$(uname -r).img $(uname -r)
4、进入NVIDIA目录执行安装(建议推迟到cuda安装后再装驱动)
$ chmod +x NVIDIA-Linux-x86_64-384.59.run $ sh NVIDIA-Linux-x86_64-384.59.run
如果安装完成,可以运行命令查看显卡状态
$ nvidia-smi
5、安装cuda
官网下载cuda-rpm包https://developer.nvidia.com/cuda-downloads,一定要对应自己的版本。
$ sudo rpm -i cuda-repo-rhel7-8-0-local-ga2-8.0.61-1.x86_64.rpm $ sudo yum clean all $ sudo yum install cuda
报错了:
Error: Package: 1:nvidia-kmod-375.26-2.el7.x86_64 (cuda-8-0-local-ga2)Requires: dkmsYou could try using --skip-broken to work around the problemYou could try running: rpm -Va --nofiles --nodigest
缺少2个包,装第一个:
sudo vim /etc/yum.repos.d/linuxtech.testing.repo
输入:
[linuxtech-testing]name=LinuxTECH Testingbaseurl=http://pkgrepo.linuxtech.net/el6/testing/enabled=0gpgcheck=1gpgkey=http://pkgrepo.linuxtech.net/el6/release/RPM-GPG-KEY-LinuxTECH.NET
sudo yum --enablerepo=linuxtech-testing install libvdpau
第二个:
yum -y install epel-release yum -y install --enablerepo=epel dkms
OK,再次执行install安装cuda
。。。发现驱动没了。。。只好重新安装,看样子要先装cuda再装NVIDIA驱动,只好再装一波驱动。
6、测试cuda
cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery sudo make ./deviceQuery
安装成功
7、cuda添加到bashprofile中
vim .bashprofile
PATH=$PATH:$HOME/bin:/usr/local/cuda/binLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64/CUDA_HOME=/usr/local/cudaexport PATHexport LD_LIBRARY_PATHexport CUDA_HOME
查看nvcc版本号
nvcc -V
8、安装cudnn
cudnn官网需要注册无法wget,所以在Windows下载然后通过ssh传过去,为什么不用U盘或者共享文件夹?因为我在家。。。服务器刚配置。。。不嫌麻烦用xshell插件也可以。这里安装了一个Windows下ssh窗口传输文件的工具:
yum install lrzsz
运行命令为rz,不用scp了,很方便。
解压cudnn到cuda的安装目录
tar -xvf cudnn-8.0-linux-x64-v6.0.tgz -C /usr/local
抱歉,公司小伙说7.5版本用不了,他去官网注册下了个cudnn-8.0-linux-x64-v6.0。
9、安装TensorFlow
如果没有pip请安装pip,记得修改一下pip的源,否则速度很慢
yum install python-pip pip install --upgrade pip
安装TensorFlow-gpu版本
pip install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.3.0-cp27-none-linux_x86_64.whl
测试:
成功。over。
参考:
此外,建议参考TensorFlow官网,在虚拟环境下安装。