1. 安装好nvidia驱动后,到官网上下载相应的文件,记得要下载.run文件,cuda各版本下载地址,这时候有1个patch,也一并下载了
2. 到下载文件的目录下打开终端,依次运行下面的命令
sudo sh cuda_9.2.148_396.37_linux.run
sudo sh cuda_9.0.148.1_linux.run
运行第一条命令后,按住空格键一路向下到前面的引言显示完,会出现一些选项,我的选择如下,注意,要在选择是否安装显卡驱动(我安装时出现在第二项)时选no,否则前面的驱动就白费了
安装好后
运行第二个命令后,
将cuda路径加入path路径中,可以加入~./bashrc中,也可以加在/etc/profile中,我建议前者并在修改前做好备份,因为/etc/profile是系统文件,随意更改可能会造成系统出错。我之前在安装jdk时将路径写入/etc/profile中,导致我很多命令无法使用,重启后循环登录,最后在recover mode(好象是这个名字)下也没改成功。
sudo gedit ~/.bashrc
在文件最后加入下面两行
export PATH=/usr/local/cuda-9.2/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
更新下
source ~/.bashrc
下面安装cudnn
将下载的cudnn.tar.gz解压后。进入include文件夹,打开终端,依次执行下面的命令
sudo cp cudnn.h /usr/local/cuda/include
cd ..
sudo cp lib64/* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
验证cuda是否安装正确,依次输入以下命令,出现结果如下(我的第三种方法好像和别人不一样,可能出错了)
nvcc --version#查看cuda版本号
cd /usr/local/cuda-9.2/samples/1_Utilities/deviceQuery
sudo make
sudo ./deviceQuery
cd /usr/local/cuda/samples/5_Simulations/fluidsGL
sudo make clean && sudo make
./fluidsGL
查看cudnn版本
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
卸载cuda,用下面的命令(注意根据自己的路径改变)
cd /usr/local/cuda/bin
sudo ./uninstall_cuda_9.2.pl
卸载cudnn,只需将相关文件删除即可
rm –rf /usr/local/cuda-9.2/include/cudnn.h
rm –rf /usr/local/cuda-9.2/lib64/libcudnn*
遇到的坑:之前安装了cuda9.0,安装时一切正常,nvcc --version正常,但编译运行它自带的例子时
报错cudaGetDeviceCount returned 30 unknow_error
找到对应的文件'/usr/local/cuda-9.0/samples/1_Utilities/deviceQuery/deviceQuery.cpp' ,发现cudaGetDeviceCount返回error_id
=30,又到cuda api 网站上查cuda-api,只找到cuda_error的不同值代表的意思,
cudaErrorUnknown = 30
This indicates that an unknown internal error has occurred.于是就卸载了9.0换装cuda9.2成功