安装显卡驱动
首先需要搞清楚自己电脑的显卡,查看显卡,在终端输入以下命令:
lspci | grep -i vga
lspci | grep -i nvidia
查看显卡驱动,在终端输入以下命令:
lsmod | grep -i nvidia
在更换显卡驱动之前你需要搞清楚自己的需求是什么,也就是你需要安装的tensorflow版本与CUDA,cuDNN版本之间的对应关系,在这里用tensorflow官网的一张图表示:
还需要搞清楚CUDA和显卡驱动版本之间的关系:
在这里我需要tensorflow1.x版本,所以CUDA版本需要小于10.1,现在来更换电脑的驱动:
系统设置->软件更新->附加驱动,如图所示:
重启电脑运行:
nvidia-smi
由于我需要CUDA的版本不能太高,所以我更换了比较低的显卡驱动:390.116。从上面的表格中可以看出390.116对应版本是CUDA9.0。
下一步就是安装CUDA。
安装CUDA
去NVIDIA官网,根据自己的显卡驱动版本下载对应安装包,下载的是runfile文件,而不是deb文件。所有版本对应的地址:
https://developer.nvidia.com/cuda-toolkit-archive下载好以后,运行
sudo sh cuda_9.0.176_384.81_linux.run
开始安装,其他操作如下:
由于GCC版本过高容易出现这种错误:
降低GCC版本参考我的博客:https://blog.csdn.net/qq_34496399/article/details/105776357
降低版本后重新运行命令。(不同版本安装过程提示信息会不相同)
安装结束:
安装完毕后,再声明一下环境变量,并将其写入到 ~/.bashrc 的尾部和/etc/profile尾部:
打开用户配置文件:
sudo vim ~/.bashrc
在文件末尾添加如下语句:
export PATH="/usr/local/cuda-9.0/bin:$PATH"
export LD_LIBRARY_PATH="/usr/lcoal/cuda-9.0/lib64:$LD_LIBRARY_PATH"
保存关闭后source文件使配置生效:
source ~/.bashrc
在 /etc/profile末尾同样添加这两句
sudo vim /etc/profile
测试是否安装成功:
cd /usr/local/cuda/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
成功结果如下:
cuDNN安装
如果要使用gpu来对tensorflow进行加速,除了安装CUDA以外,cuDNN也是必须要安装的。跟cuda一样,去nvidia的官网下载cuDNN的安装包。下载cuDNN需要先注册,下载链接:https://developer.nvidia.com/cudnn。我下载的是cuDNN v7.0.5 Library for Linux如图所示:
使用tar进行解压
tar -xvf cudnn-9.0-linux-x64-v7.tgz
安装cuDNN比较简单,解压后把相应的文件拷贝到对应的CUDA目录下即可
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安装
我使用的是Anaconda环境,新建虚拟环境,指定python版本为3.6:
conda create -n test python==3.6
激活虚拟环境:
conda activate test
下载tensorflow-gpu-1.12版本
conda install tensorflow-gpu==1.12.0
在import tensorflow as tf报错:
需要降低numpy版本
pip uninstall numpy
pip install numpy==1.16.4