可参考https://blog.csdn.net/lukaslong/article/details/81007942
2018.12.29更新
NVIDIA驱动:https://www.geforce.cn/drivers
搜索自己电脑的gpu版本:下面是驱动型号的一部分结果
cuda版本:https://developer.nvidia.com/cuda-toolkit-archive
pytorch版本:https://pytorch.org/
下面是最新的版本。其他已发布的版本自己去看,这里不列出来了
tensorflow版本:https://tensorflow.google.cn/install/source_windows
Python版本:https://www.python.org/downloads/
cuDNN版本:https://developer.nvidia.com/rdp/cudnn-archive
综上来看,既要安装pytorch也要安装tensorflow(我安装的是gpu版本的)所以上面可供选择的是:cuda 8系列、9系列,Python3.5-3.6,cudnn相对应tensorflow的版本要求,NVIDIA与cuda版本相对应最低版本要求
因此我选择:cuda 9.0,NVIDIA 390.87,TensorFlow-gpu 1.12.0,Python 3.6.8,cudnn 7.3.1,pytorch 1.0
cuda9.0以及NVIDIA驱动我都是安装的run文件,我是参考这个安装的https://blog.csdn.net/jonms/article/details/79318566
CUDA完成安装之后,还需要添加环境变量,打开终端,输入下面的命令:
sudo vim ~/.bashrc
打开文件,然后在末尾添加以下3句
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}}
在终端输入:使之生效,或者关掉该终端,重新打开一个终端
source ~/.bashrc
上述过程完成了整个的CUDA9.0的安装
下面是验证上面的安装是否成功:
1.验证驱动版本:
cat /proc/driver/nvidia/version
2.验证CUDA Toolkit:
nvcc -V
3.测试sample:
3.1编译sample:大概要花上十多分钟,如果出现错误的话,系统会立即报错停止。如果编译成功,最后会显示Finished building CUDA samples
cd /usr/local/cuda-9.0/samples
sudo make
3.2接着运行编译生成的二进制文件:result = pass成功否则result=fail
cd bin/x86_64/linux/release
./deviceQuery
3.3最后检查一下系统和CUDA-Capable device的连接情况 :result = pass表示成功
./bandwidthTest
但是在第三步编译samples的sudo make命令之后出现:
错误的解决方式很简单,就是安装低版本gcc和g++,并创建链接或更改gcc各版本的优先级。做法如下:
1.安装gcc-6和g++-6(为了以后以后考虑),版本只要比错误中提到的支持上限小就没问题
sudo apt-get install gcc-6 g++-6
2.更改gcc各版本的优先级
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-6
上述两点做完之后继续测试samples之后的步骤。
安装cudnn:
去官网https://developer.nvidia.com/rdp/cudnn-archive
先注册进去之后,点最下面的那个releases 选择你需要的版本,下载适合cuda版本的deb文件或tgz文件
(一)亲测:deb文件
在这里我下载的是2018年9月28号的for cuda 9.0的v7.3.1,下载子文件夹里面的三个for Ubuntu16.04的deb文件,分别是:
libcudnn7_7.3.1.20-1+cuda9.0_amd64.deb 127M左右 对应的是cuDNN v7.3.1 Runtime Library for Ubuntu16.04 (Deb)
libcudnn7-dev_7.3.1.20-1+cuda9.0_amd64.deb 117.7M左右 对应的是cuDNN v7.3.1 Developer Library for Ubuntu16.04 (Deb)
libcudnn7-doc_7.3.1.20-1+cuda9.0_amd64.deb 4.9M左右 对应的是cuDNN v7.3.1 Code Samples and User Guide for Ubuntu16.04 (Deb)
1.deb文件进行安装:通过deb文件安装,/usr/src目录下会有cudnn_samples_v7
sudo dpkg -i libcudnn7_7.3.1.20-1+cuda9.0_amd64.deb
sudo dpkg -i libcudnn7-dev_7.3.1.20-1+cuda9.0_amd64.deb
sudo dpkg -i libcudnn7-doc_7.3.1.20-1+cuda9.0_amd64.deb
2. 测试cudnn是否成功:提示“Test passed!”信息表示安装成功
cp -r /usr/src/cudnn_samples_v7 $HOME # 复制该目录到home下面
cd $HOME/cudnn_samples_v7/mnistCUDNN
make clean && make
./mnistCUDNN
如果提示库缺失错误,可参考以下命令
sudo cp /usr/local/cuda-9.0/lib64/libcudart.so.9.0 /usr/local/lib/libcudart.so.9.0 && sudo ldconfig
sudo cp /usr/local/cuda-9.0/lib64/libcublas.so.9.0 /usr/local/lib/libcublas.so.9.0 && sudo ldconfig
sudo cp /usr/local/cuda-9.0/lib64/libcurand.so.9.0 /usr/local/lib/libcurabd.so.9.0 && sudo ldconfig
sudo cp /usr/local/cuda-9.0/lib64/libcudnn.so.7 /usr/local/lib/libcudnn.so.7 && sudo ldconfig
(二)tgz文件:下载下面的这个文件,对应的是cudnn-9.0-linux-x64-v7.3.1.20.tgz 361.6M左右大小
1.首先解压tgz文件
tar -xzvf cudnn-9.0-linux-x64-v7.3.1.20.tgz
2.复制文件到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 /usr/local/cuda/lib64/libcudnn*
上述过程完成了整个的cudnn7.3.1的安装