参考链接:http://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html
Windows10
1.去NVIDIA官网下载对应版本的显卡驱动:
http://www.nvidia.com/Download/index.aspx?lang=en-us
2.下载对应的CUDA(Compute Unified Device Architecture),是NVIDIA推出的通用并行计算架构,包含了使用GPU资源进行通用计算的SDK(软件开发工具包)。下载CUDA版本的地址为:https://developer.nvidia.com/cuda-downloads ,注意一定要下载tensorflow-gpu所支持的CUDA版本,在这里我下载了tensorflow-gpu r1.7,对应的CUDA版本为9.0,既不能高也不能低。如果版本下载错误,比如下载了9.1版本,卸载的方法也很简单,打开“控制面板”,将有关NVIDIA和9.1的程序都卸载,此时cuda9.1和环境变量会被完全卸载。
3.安装CUDA 9.0,下载后为exe格式,比如cuda_9.0.176_win10.exe,双击安装即可,安装过程中,环境变量会被自动添加,安装完后,查看是否安装成功:
方法1:在命令行输入查看CUDA版本:
C:\Users\Administrator>nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2017 NVIDIA Corporation
Built on Fri_Sep__1_21:08:32_Central_Daylight_Time_2017
Cuda compilation tools, release 9.0, V9.0.176
方法2:打开NVIDIA控制面板查看显卡所支持的CUDA版本,“桌面”→“右键”→“NVIDIA控制面板”,任务栏上选择“帮助”→“系统信息”→“组件”
4.下载cuDNN,相比于标准的cuda,cuDNN专门针对神经网络操作进行了性能的优化,比如卷积,pooling,归一化以及激活层等,绝大多数的深度学习框架都使用cuDNN来驱动GPU计算。下载地址:https://developer.nvidia.com/cudnn,但是需要先注册账号才能下载。需要选择与CUDA9.0版本对应的cuDNN,同时cuDNN版本也要与tensorflow对应,比如tensorflow1.7对应cuDNN 7.0.X,我是从报错信息中得知的。
5.下载后的cuDNN其实就是几个文件,只需要将这些文件复制到CUDA的文件夹即可
左边是下载后的cuDNN文件夹,右边是CUDA的安装目录,将将左边文件夹中的内容放到对应右边文件夹里即可。
Ubuntu16.04安装
1.接口和显卡驱动的下载与安装:
安装Thunderbolt3驱动:
我所用为技嘉的GTX 1080 GAMING BOX,采用Thunderbolt3接口传输数据,所以要先编译安装Thunderbolt3驱动,
接口驱动安装参考如下链接:
https://egpu.io/forums/thunderbolt-linux-setup/egpu-in-linux-has-anyone-here-gotten-it-to-work/#post-24877
总过程:https://zhuanlan.zhihu.com/p/33811068
过程如下:
# 安装依赖包
sudo apt install cmake dkms net-tools libboost-filesystem-dev libboost-program-options-dev txt2tags build-essential pkg-config git glmark2
# 下载并编译安装Thunderbolt3驱动
git clone https://github.com/01org/thunderbolt-software-user-space.git
cd thunderbolt-software-user-space
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr
sudo cmake --build . --target install
reboot # 重启一下生效
雷电3接口驱动安装成功之后,显卡盒子会被点亮。
安装显卡驱动
首先确认显卡驱动版本:
sudo ubuntu-drivers devices
可以去官网下载驱动run文件:下载地址:http://www.nvidia.com/Download/index.aspx?lang=en-us。
需要进入命令行界面安装,因为要避开X server,点击ctrl+AIt+F1进入:
Ubuntu 16.04:
sudo service lightdm stop
Ubuntu 18.04:
sudo systemctl set-default multi-user.target
chmod u+x NVIDIA-Linux-x86_64-390.48.run # 修改驱动run文件为可执行权限
sudo ./NVIDIA-Linux-x86_64-390.48.run
'''
NVIDIA-Linux-x86_64-390.48.run命令后可加如下参数:
-no-opengl-files:只安装驱动文件,不安装OpenGL文件,此选项防止出现循环登录问题
-no-x-check:安装驱动时不检查X server
-no-nouveau-check:安装时不检查nouveau
'''
重启图形界面服务:
Ubuntu 16.04:
sudo service lightdm start
Ubuntu 18.04:
sudo systemctl set-default graphical.target
如果驱动下载版本错误,可通过如下卸载:
sudo nvidia-uninstall
也可以通过之前的run文件卸载:
sh ./NVIDIA-Linux-x86_64-390.48.run --uninstall
2.CUDA的下载和安装
需要进入命令行界面安装,因为要避开X server,点击ctrl+AIt+F1进入:
安装显卡驱动时,需要关闭X server:
Ubuntu 16.04:
sudo service lightdm stop
Ubuntu 18.04:
sudo systemctl set-default multi-user.target
chmod u+x cuda_9.0.176_384.81_linux.run # 修改CUDA安装run文件为可执行权限
sudo ./cuda_9.0.176_384.81_linux.run
然后一路accept或者y,在提示安装显卡驱动时选择no,因为我们已经安装过;到Install CUDA9.0 Samples?选择n,因为我们不直接使用CUDA写代码。下载后的CUDA默认安装到/usr/local/CUDA-9.0/文件夹。
重启图形界面服务:
Ubuntu 16.04:
sudo service lightdm start
Ubuntu 18.04:
sudo systemctl set-default graphical.target
CUDA卸载:在/usr/local/cuda/bin
目录中有个卸载文件uninstall_cuda_9.X.pl
,运行改文件即可卸载cuda:
sudo ./uninstall_cuda_9.X.pl
2.安装cuDAA,需要先注册才能下载,下载如下3个:
对下载的deb包进行安装:
sudo dpkg -i libcudnn7_7.0.4.11-1+cuda9.0_amd64.deb
sudo dpkg -i libcudnn7-dev_7.0.4.11-1+cuda9.0_amd64.deb
sudo dpkg -i libcudnn7-doc_7.0.4.11-1+cuda9.0_amd64.deb
3.配置环境变量,在.bashrc(/home/winycg/.bashrc)文件中。终端中输入如下命令编辑.bashrc文件:
gedit .bashrc
输入环境变量:
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64:/usr/local/cuda-9.0/extras/CUPTI/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda-9.0
export PATH=/usr/local/cuda-9.0/bin:$PATH
输入如下命令使得环境变量生效:
source .bashrc
4.测试GPU是否可用。
$cp -r /usr/src/cudnn_samples_v7/ $HOME # 复制文件夹到home
$ cd $HOME/cudnn_samples_v7/mnistCUDNN
$make clean && make # 编译mnistCUDNN sample
$ ./mnistCUDNN # Run the mnistCUDNN sample.
如果cuDNN安装成功,则显示:
Test passed!
NVIDIA驱动和CUDA卸载:
To uninstall the CUDA Toolkit, run cuda-uninstaller in /usr/local/cuda-12.0/bin
To uninstall the NVIDIA Driver, run nvidia-uninstall