下载CUDA8.0
去官网下载:https://developer.nvidia.com/cuda-downloads
并在后续步骤中依次选择Linux->x86_64->Ubuntu->16.04->runfile (local)下载。
注意,一定要选择runfile,不要选择deb,因为deb文件自带显卡驱动,会把之前安装好的显卡驱动覆盖掉。下载后的文件名是cuda_******_linux.run
安装CUDA8.0
cd 文件存放目录
sudo sh ./cuda_******_linux.run
首先是一大堆条款,可以直接回车到底
接下来是一堆选项,按照下图输入:
- 第一个是条款,输入accept就好
- 第二个是安装驱动,因为之前已经安装过了NVIDIA驱动,因此一定要选NO
- 第三个回车,使用默认安装路径/usr/local/cuda-8.0
- 第四个输入y,安装指向/usr/local/cuda的符号链接
- 第五个输入输入y,安装Samples
- 第六个回车,用Samples默认安装路径/home/xxxx此处的xxxx指的是你的用户名
成功后如图所示
重启之后
nvcc -V
可以看到CUDA的版本信息:
配置环境
sudo gedit ~/.bashrc
输入:
export PATH=/usr/local/cuda-8.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
执行:
source ~/.bashrc
gcc g++降级
cuda8.0不支持5.0以上的gcc编译器,因此先要降级
gcc --version #可以查看gcc版本
sudo apt-get install gcc-4.8
ls /usr/bin/gcc* #查看已有的gcc版本
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 100 #将某个版本加入gcc候选中,最后的数字是优先级,直接设为100
sudo update-alternatives --config gcc #如果用过此方法配置过多个gcc版本,会看到多个版本。大多数情况是没有这么配置过,所以不会给选项,命令行会返回“仅有一个可用的gcc版本”(大意)。
gcc --version #发现gcc版本为4.8.5
同样的方法降级g++
g++ --version #可以查看gcc版本
sudo apt-get install g++-4.8
ls /usr/bin/g++* #查看已有的g++版本
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 100 #将某个版本加入g++候选中,最后的数字是优先级,直接设为100
sudo update-alternatives --config g++ #如果用过此方法配置过多个g++版本,会看到多个版本。大多数情况是没有这么配置过,所以不会给选项,命令行会返回“仅有一个可用的g++版本”(大意)。
g++ --version #发现g++版本为4.8.5
测试安装是否成功
cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
显示gpu信息,说明安装成功。
下载cuDNN6.0
官网下载:https://developer.nvidia.com/rdp/cudnn-download
依次选择 “Download cuDNN v6.0 (April 27, 2017), for CUDA 8.0”->cuDNN v6.0 Library for Linux。下载下来是一个.tgz的压缩包,文件名是cudnn-8.0-linux-x64-v6.0.tgz
配置cuDNN6.0
若之前没有配置过:
cd 文件存放目录
tar -xvf 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*
这样cuDNN 6.0就安装好了
若之前配置过,这次重新配置:
tar zxvf cudnn-8.0-linux-x64-v5.1.tgz #解压
cd cuda/include #进入include目录
sudo cp cudnn.h /usr/local/cuda/include/ #复制头文件
cd ../lib64 #进入lib64目录
sudo cp lib* /usr/local/cuda/lib64/ #复制动态链接库
cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.5 #删除原有动态文件
# 以下的两步设置软连接时,
一定要注意自己电脑的/usr/local/cuda/lib64/下的libcudnn.so.5.1.5名字,
有的可能是libcudnn.so.5.0.5等,要依据自己的电脑上的文件来定
sudo ln -s libcudnn.so.5.1.5 libcudnn.so.5 #生成软链接
sudo ln -s libcudnn.so.5 libcudnn.so #生成软链接
sudo ln -s libcudnn.so.5.1.10 libcudnn.so.5 #生成软链接
sudo ln -s libcudnn.so.5 libcudnn.so #生成软链接
网友评论