记录下自己安装cuda以及cudnn
之前已经装过一次了,不过没有做记录,现在又要翻一堆博客安装,长点记性,自己记录下。
环境 ubuntu16.04 python2.7
商家送过来时候已经装好了显卡驱动,所以省去了一大麻烦。
剩下的就是安装cuda和cudnn。
显卡驱动与cuda版本是有对应关系的,官网上贴出的匹配表
我的显卡驱动是384.130,与cuda8对应,于是下载cuda8,官网进去后就是cuda10,旧版本的地址 https://developer.nvidia.com/cuda-toolkit-archive
下载好后,一路回车,然后在是否安装显卡驱动时输入no,因为显卡驱动已经有了,选yes会被覆盖掉。
安装的默认路径是/usr/local/cuda-8.0,我们需要手动添加该路径到环境中,如下
$ sudo gedit ~/.bashrc
然后在后面添加两行
export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
另外在profile中也要添加上面两行
$ sudo gedit /etc/profile
重启一下,输入nvcc -V
输出如下
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Tue_Jan_10_13:22:03_CST_2017
Cuda compilation tools, release 8.0, V8.0.61
此时,cuda已经装好了,接下来安装cudnn.
cudnn的版本与cuda也是有对应关系的,如下
看到网上的教程中cuda8与cudnn6搭配的比较多,于是我采用cudnn6.
下载cudnn需要注册帐号,挺麻烦的,看到有一个博客中直接用wget下载,试了一下,速度飞快,还省去了注册帐号的麻烦。
wget http://developer.download.nvidia.com/compute/redist/cudnn/v6.0/cudnn-8.0-linux-x64-v6.0.tgz
然后需要解压,并将头文件和动态链接库复制到cuda路径中,
$ tar -zxvf cudnn-8.0-linux-x64-v6.0.tgz
$ sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
$ sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/
$ sudo chmod a+r /usr/local/cuda/include/cudnn.h
$ sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
有好多教程最后要创建软链接,我没有创建,直接安装了tensorflow-gpu
pip install tensorflow-gpu
默认安装的是1.12,版本应该是高了,结果需要cuda9,于是卸载了,重新安装1.3
pip install tensorflow-gpu==1.3
用python测试了一下,输出如下
Python 2.7.12 (default, Nov 12 2018, 14:36:49)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
>>> tf.Session()
2018-11-20 00:34:37.313431: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
2018-11-20 00:34:37.313493: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
2018-11-20 00:34:37.313515: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.
2018-11-20 00:34:37.313538: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX2 instructions, but these are available on your machine and could speed up CPU computations.
2018-11-20 00:34:37.313559: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use FMA instructions, but these are available on your machine and could speed up CPU computations.
2018-11-20 00:34:37.467953: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:893] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2018-11-20 00:34:37.468324: I tensorflow/core/common_runtime/gpu/gpu_device.cc:955] Found device 0 with properties:
name: GeForce GTX 1080 Ti
major: 6 minor: 1 memoryClockRate (GHz) 1.582
pciBusID 0000:01:00.0
Total memory: 10.91GiB
Free memory: 10.54GiB
2018-11-20 00:34:37.468342: I tensorflow/core/common_runtime/gpu/gpu_device.cc:976] DMA: 0
2018-11-20 00:34:37.468348: I tensorflow/core/common_runtime/gpu/gpu_device.cc:986] 0: Y
2018-11-20 00:34:37.468355: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1045] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 1080 Ti, pci bus id: 0000:01:00.0)
<tensorflow.python.client.session.Session object at 0x7f93d7d96250>
一切正常,安装成功。
参考资料
https://blog.csdn.net/weixin_41864878/article/details/79621210
https://www.cnblogs.com/wmxfd/p/installation_of_nvidia_graphics_driver_and_cuda8_and_cudnn6.html
https://blog.csdn.net/qq_34057614/article/details/81228746
https://blog.csdn.net/xiangxianghehe/article/details/79177833
https://blog.csdn.net/qq_38522539/article/details/80678412
https://www.cnblogs.com/chay/p/8038251.html#_label3
https://blog.csdn.net/zong596568821xp/article/details/80410416
https://blog.csdn.net/twt520ly/article/details/79415787