概述
环境:
Ubuntu16.04
python3.5(自带)
NVIDIA GTX 960
本文需要安装的内容有Cuda8.0和Cudnn5.1和tensorflow-gpu。
一定要注意,cuda版本8.0,cudnn版本5.1,tensorflow-gpu版本1.2.1 ,NVIDIA驱动版本384.*
之前下载最新的版本,比如cuda9+,cudnn6+,tensorflow1.8,驱动390+之类的,怎么都调不通,各种奇葩问题,折腾了两天,最后老老实实下载低版本的,完美解决,真是血的教训啊。当然不是说以上版本一定是绑定的,不会的了,比如在windows下,我使用的Python3.6配置的gpu,详情可以参考我的另一篇文章,因为主要还是在linux下玩,所以windows下的没有一步步列出操作,其实很简单,具体翻上篇吧,文章给出了链接。好了,废话少说,直接上干货。
硬件检测
检查你的显卡是否可以安装Cuda
首先,你要有一块NVIDA的显卡,然后性能评分要大于3.0
显卡性能检测请看这里
cuda版本对应的nvidia驱动版本要求
查看显卡的型号
首先安装显卡驱动。首先看自己显卡
lspci | grep -i vga
lspci | grep -i nvidia
然后看显卡驱动
lsmod | grep -i nvidia
#查看你的系统信息
uname -m && cat /etc/*release
# 查看核
uname -r
# 为当前核安装kernel headers和development packages
sudo apt-get install linux-headers-$(uname -r)
安装NVIDIA驱动
打开terminal输入以下指令:
sudoapt-getupdate1
然后在系统设置->软件更新->附加驱动->选择nvidia驱动(384)->应用更改
或者直接去官网下载:
查询NVIDIA驱动
首先去官网(http://www.nvidia.com/Download/index.aspx?lang=en-us)查看适合自己显卡的驱动:
然后下载要找的版本即可。
安装
打开终端先删除旧的驱动
sudo apt-get purge nvidia*
- 1
2.2禁用自带的 nouveau nvidia驱动 (important!)
sudo vim /etc/modprobe.d/blacklist-nouveau.conf
- 1
并在文件中添加如下内容:
blacklist nouveau
options nouveau modeset=0
然后在更新一次 sudo update-initramfs -u
首先我们需要结束x-window的服务,否则驱动将无法正常安装,通过以下命令实现。
sudo service lightdm stop
- 1
然后切换到tty1控制台:Ctrl+Alt+F1即可
安装驱动
cd /home/katherine/
sudo sh ./NVIDIA*.run
- 1
- 2
重新启动X-Window: sudo service lightdm start
,然后Ctrl+Alt+F7进入图形界面
检查
nvidia-smi
下载Cuda
按装官方教程,我们可以应该安装Cuda8.0和Cudnn V5.1
(由于Cuda7.5最高支持15.04,所以不推荐安装Cuda7.5,虽然也能运行。另外Cuda8.0一定要安装Cudnn5.1,版本必须匹配)
大家可以到这里来下载Cuda8.0
如图,打开主页,列出的永远是最新的版本,注意看清版本,如上是cuda9了,千万别手贱去下载了这个最新的,否则无数坑等着跳吧。
正确的打开方式如下:点击 Legacy Release,选择对应版本。
.gcc降版本
ubuntu的gcc编译器是5.4.0,然而cuda8.0不支持5.0以上的编译器,因此需要降级,把编译器版本降到4.9:
在terminal中执行:
sudo apt-get install g++-4.9
然后和装驱动一样的操作,Alt+F1进入文本界面安装。
cd 到你要下载的目录,执行
sudo sh cuda_8.0.44_linux.run
然后你会看到
Do you accept the previously read EULA?
accept/decline/quit: accept
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 361.62?
(y)es/(n)o/(q)uit: n
后面的基本都是Yes了
安装完毕,输入
sudo service lightdm start
回到图形界面。
设置Cuda环境变量
到这里,成功了一小半,这里必须设置下环境变量,否则后面TensorFlow运行失败
sudo vi ~/.bashrc
打开配置文件,最后们加入以下几行
OK,wq保存下完事。然后,终端运行:source~/.bash_profile#使更改的环境变量生效1
Cudnn 安装
下载Cudnn
到这里下载。
当然你先得注册一个NVIDA账号,添一堆问卷。
选择 Download cuDNN v5.1 (Jan 20, 2017), for CUDA 8.0下载
cuDNN v5.1 Runtime Library for Ubuntu16.04 Power8 (Deb)
安装
或者下载tar,解压后会得到一个Cuda文件夹,复制到Cuda-8.0文件夹中
sudo cp cuda/include/cudnn.h /usr/local/cuda-8.0/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-8.0/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda-8.0/lib64/libcudnn*
安装TensorFlow
终于部署好环境了,现在进入正题,tensorflow的安装前,请先更新下pip,
sudo apt-get install python-pip python-dev # for Python 2.7
sudo apt-get install python3-pip python3-dev # for Python 3.n
通过调用以下命令之一来安装TensorFlow
pip install tensorflow # Python 2.7; CPU support (no GPU support)
pip3 install tensorflow # Python 3.n; CPU support (no GPU support)
pip install tensorflow-gpu # Python 2.7; GPU support
pip3 install tensorflow-gpu # Python 3.n; GPU support
也可以指定版本,对,必须指定下,不然可能还有坑等着。
pip3 install tensorflow-gpu==1.2.1
最后是测试了。
完成安装开始验证
在terminal中输入:
python3
- 1
然后输入程序验证:
import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))
- 1
- 2
- 3
- 4
如果安装成功,则会显示 Hello, TensorFlow!
最后,最坑的一点来了,上述一切都正常的情况下,使用tensorflow-gpu没有任何问题,但是打开pycharm ,眼看着配置都是正确的,但是一旦运行,就会报错,
ImportError: libcusolver.so.8.0: cannot open shared object file: No such file or directory
又是一番折腾,最终还是找到了解决方法。
https://blog.csdn.net/appleml/article/details/76922476
给出解决方案:
pycharm 菜单栏Run-Edit Configurations
把cuda的路径添加到environment variables
修改Environment Variables:
附:
操作过程记录
一、pip3安装 ,版本19.1.1
tar -zxvf pip-8.0.2.tar.gz
cd pip-8.0.2
python3 setup.py build
python3 setup.py install
[所有包下载后可以通过pip安装]
pip install+ whl文件位置
二、numpy安装
pip3 install numpy*.whl
以下类推、
scikit-image 0.15.0
scikit-learn 0.21.1
scipy 1.2.1
三、目标环境:cuda9.0 cuDNN7.0.5_for_cuda9.0 tensorflow
显卡:NVIDIA GeForce GTX 1070ti
流程:
1.安装NVIDIA显卡驱动
2.安装CUDA
3.降低gcc,g++版本
4.安装CUDNN
5.安装Anaconda
6.安装Tensorflow-gpu
1.驱动下载完成后,卸载之前安装的NVIDIA驱动:
sudo apt-get remove --purge nvidia*
接着为下载的NVIDIA驱动赋权,并使用驱动文件执行unistall操作:
sudo chmod +x *.run
sudo ./NVIDIA-Linux-x86_64-410.78.run --uninstall
接下来需要禁用nouveau,打开/etc/modprobe.d/blacklist.conf在文本最后一行添加
blacklist nouveau
sudo vim /etc/modprobe.d/blacklist.conf
然后执行:sudo update-initramfs -u
sudo reboot
重启,lsmod | grep nouveau
接下来终于可以安装下载的驱动文件啦,重启开机后,按Ctrl-Alt+F1,输入用户名和密码登录,进入驱动文件目录,为文件赋权。
sudo chmod a+x NVIDIA-Linux-x86_64-410.78.run
接下来进行安装:
sudo ./NVIDIA-Linux-x86_64-410.78.run -no-opengl-files -no-x-check -no-nouveau-check
上面三个参数的说明:
-no-opengl-files 只安装驱动文件,不安装OpenGL文件。这个参数最重要
-no-x-check 安装驱动时不检查X服务
-no-nouveau-check 安装驱动时不检查nouveau
2.cuda安装
sudo chmod 777 cuda_9.0.176_384.81_linux.run
sudo sh ./cuda_9.0.176_384.81_linux.run
配置:
sudo gedit ~/.bashrc
export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export CUDA_HOME=/usr/local/cuda
然后source ~/.bashrc
3.cudnn安装
sudo cp cuda/include/cudnn.h /usr/local/cuda-8.0/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-8.0/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda-8.0/lib64/libcudnn*
查看安装版本:
cat /usr/local/cuda/version.txt
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
查看CUDA版本和CUDNN版本
cuda卸载:
到CUDA9.0的目录下,找到卸载的文件
/usr/local/cuda-9.0/bin
sudo /usr/local/cuda-9.0/bin/uninstall_cuda_9.0.pl
这个过程需要一分钟左右,
sudo rm -rf /usr/local/cuda-9.0/
卸载cuDNN
打开终端,输入
sudo rm -rf /usr/local/cuda/lib64/libcudnn
sudo rm -rf /usr/local/cuda/include/cudnn.h
参考链接:
1.https://blog.csdn.net/qq_30520759/article/details/78947034
2.https://segmentfault.com/a/1190000008234390
3.https://www.aliyun.com/jiaocheng/515113.html
4.https://www.cnblogs.com/luruiyuan/p/6660142.html
最后
以上就是俊逸鸡翅为你收集整理的Ubuntu16.04下+cuda8.0+cudnn5.1+GTX 960 安装tensorflow-GPU查看CUDA版本和CUDNN版本的全部内容,希望文章能够帮你解决Ubuntu16.04下+cuda8.0+cudnn5.1+GTX 960 安装tensorflow-GPU查看CUDA版本和CUDNN版本所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复