1.1.Verify You Have a CUDA-Capable GPU
在终端中输入: $ lspci | grep -i nvidia ,会显示自己的NVIDIA GPU版本信息
去CUDA的官网岩镇首http://developer.nvidia.com/cuda-gpus查看自己的GPU版本是否在CUDA的支持列表中
1.2.Verify You Have a Supported Version of Linux 检查自己的linux版本是否支持,我安装的是ubuntu14.04版本的,这个就没有问题
在终端中输入: $ uname -m &&cat /etc/*release
终端显示结果如下所示:
1.3. Verify the System Has gcc Installed
在终端中输入: $ gcc --version
1.4. Verify the System has the Correct Kernel Headers and Development Packages Installed
在终端中输入: $ uname –r 可以查看自己的kernel版本信息
在终端中输入:$ sudo apt-get install linux-headers-$(uname -r)
可以安装对应kernel版本的kernel header和package development
这四个小步骤我都比较顺利,安装好ubuntu后这些都装好了,如果在某一步中有问题,可以参照官方文档进行解决。
runfile安装cuda 下载链接https://developer.nvidia.com/cuda-downloads
2.1.禁用 nouveau
终端中运行粗数:$ lsmod | grep nouveau,如果有输出则代表nouveau正在加载。
Ubuntu的nouveau禁用方法:
在/etc/modprobe.d中创建文件blacklist-nouveau.conf,在文件中输入以下两行内容:
blacklist nouveau
options nouveau modeset=0
在终端中输入:$ sudo update-initramfs –u
设置完毕可以再次运行
$ lsmod | grep nouveau 检查是否禁用成功
如果运行后没有任何输出,则代表禁用成功(如果还有输出,表示没有禁用成功,不过也不要担心,可以重启电脑,再次运行该命令一般情况下会显示禁用成功)。
2.2.重启电脑,到达登录界面时,alt+ctrl+f1,进入text mode,登录账户
2.3.在text mode中输入
$ sudo service lightdm stop 关闭图形化界面
2.4.切换到cuda安装文件的路径
运行$ sudo sh cuda_7.5.18_linux.run
一般下载好cuda安装包后直接放在home目录下,就可以按照上面的代码运行了,建议这么做。
遇到提示是否安装openGL ,选择no(如果你的电脑跟我一样是双显,且主显是非NVIDIA的GPU需要选择no,否则可以选择yes)。其他都选择yes或者默认安装成功后,会显示installed,否则会显示failed。
2.5. 输入 $ sudo service lightdm start 重新启动图形化界面。
Alt + ctrl +F7,返回到图形化登录界面,输入密码登录。
如果能够成功登录,则表示不会遇到循环登录的问题,基本说明CUDA的安装成功了。
2.6. 重启电脑。检查Device Node Verification。
检查路径~/dev下 有无存在名为nvidia*(以nvidia开头)的多个文件(device files)
如果没有的话,旅源可以参考官方文档里的指导步骤,进行添加。
添加过程:
a)在home下创建一个文档,命名位modprobe,不要后缀,文档的内容如下:
#!/bin/bash
/sbin/modprobe nvidia
if [ "$?" -eq 0 ]then
# Count the number of NVIDIA controllers found.
NVDEVS=`lspci | grep -i NVIDIA`
N3D=`echo "$NVDEVS" | grep "3D controller" | wc -l`
NVGA=`echo "$NVDEVS" | grep "VGA compatible controller" | wc -l`
N=`expr $N3D + $NVGA - 1`
for i in `seq 0 $N`do
mknod -m 666 /dev/nvidia$i c 195 $i
done
mknod -m 666 /dev/nvidiactl c 195 255
else
exit 1
fi
/sbin/modprobe nvidia-uvm
if [ "$?" -eq 0 ]then
# Find out the major device number used by the nvidia-uvm driver
D=`grep nvidia-uvm /proc/devices | awk '{print $1}'`
mknod -m 666 /dev/nvidia-uvm c $D 0
else
exit 1
fi
b)将该文件复制到/etc/init.d目录下
终端输入: $ sudo chmod 755 /etc/init.d/modprobe
d)执行如下命令将脚本放到启动脚本中去。
终端输入: $ cd /etc/init.d
$ sudo update-rc.d modprobe defaults 95
注意:数字95其实可以随便设置的。
e)关机然后重新启动,去~/dev下面查看,不出意外此时应该有nvidia*系类文件了。
对于2.6的说明:很有必要说一下不管怎么搞我的nvidia*文件总是出现不了,所以我放弃,不过好像并没有太大的影响。这一点根据情况大家自己试试吧。
2.7. 设置环境变量。
终端中输入 $ sudo gedit /etc/profile
在打开的文件末尾,添加以下两行:
export PATH=/usr/local/cuda-7.5/bin/:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda7.5/lib64/:$LD_LIBRARY_PATH
2.8. 重启电脑,检查上述的环境变量是否设置成功。
终端中输入 : $ env
在输出的环境变量中检查有无上述 设置的变量,如果有则代表设置成功。
3. 检查cuda是否安装成功。
3.1.检查 NVIDIA Driver是否安装成功
终端输入 :$ cat /proc/driver/nvidia/version 会输出NVIDIA Driver的版本号
3.2检查 CUDA Toolkit是否安装成功
终端输入 : $ nvcc –V 会输出CUDA的版本信息
3.3尝试编译cuda提供的例子
切换到例子存放的路径,默认路径是 ~/NVIDIA_CUDA-7.5_Samples
终端输入:$ make
注意:这里的make *** 作是将Samples文件夹下所有的demo都编译了一遍,所以比较耗时,如果仅仅想测试某个例子,可以进入相应的文件夹去编译即可。
如果出现错误的话,则会立即报错停止,否则会开始进入编译阶段。
注意:我第一次运行的时候就报错了,错误是缺少一些依赖库,一般情况下也就是这个问题,按照如下方式安装就好,其实也没必要都安装,不过安装上也不会报错:
$ sudo apt-get install freeglut3-dev
$ sudo apt-get install build-essential
$ sudo apt-get install libx11-dev
$ sudo apt-get install libxmu-dev
$ sudo apt-get install libxi-dev
$ sudo apt-get install ibgl1-mesa-glx
$ sudo apt-get install llibglu1-mesa
$ sudo apt-get install libglu1-mesa-dev
安装好后,在终端输入: $ make
成功后,NVIDIA_CUDA-7.5_Samples文件夹下会出现一个bin文件夹。运行编译生成的二进制文件。
编译后的二进制文件 默认存放在~/NVIDIA_CUDA-7.5_Samples/bin中。
1、什么是CUDA
2、什模碰弯么是CUDNN
3、CUDA与CUDNN的关系
4、CUDNN不会对CUDA造成影响
官方Linux安装指南表述:
cuDNN的安装文件有两个文件夹,共五个文件,如下
CUDA平台里对应文件夹的文件,如下
可以看到,CUDA已有的文件与cuDNN没有相同的文件,复制CUDNN的文件后,CUDA里的文件并不会被覆盖,CUDA其他文件并不会受影响。
5、Linux下CUDNN的安装
在服务器上共安装了三个不同版本的CUDA,并不知旦闷道哪个能正常调用,所以需要安装三个不同版本的cuDNN。
cuDNN的文件已经放入服务器我的文件夹下
linu命令如下:如果不行,就全部去掉sudo。
cp 是复制,chmod是给与文件可读权限,使这个文件可以读取,吵陵rm 是删除文件
(1)
sudo cp /public/home/qliang/lyr/ysl/cudnn9.1/cuda/include/cudnn.h /usr/local/cuda-9.1/include
sudo cp /public/home/qliang/lyr/ysl/cudnn9.1/cuda/include/libcudnn* /usr/local/cuda-9.1/lib64
sudo chmod a+r /usr/local/cuda-9.1/include/cudnn.h
sudo chmod a+r /usr/local/cuda-9.1/lib64/libcudnn*
(2)
sudo cp /public/home/qliang/lyr/ysl/cudnn9.1/cuda/include/cudnn.h /public/software/cuda-9.1/include
sudo cp /public/home/qliang/lyr/ysl/cudnn9.1/cuda/lib64/libcudnn* /public/software/cuda-9.1/lib64
sudo chmod a+r /public/software/cuda-9.1/include/cudnn.h
sudo chmod a+r /public/software/cuda-9.1lib64/libcudnn*
(3)
sudo cp /public/home/qliang/lyr/ysl/cudnn10/cuda/include/cudnn.h/ usr/local/cuda-9.1/include
sudo cp /public/home/qliang/lyr/ysl/cudnn10/cuda/lib64/libcudnn* /usr/local/cuda-9.1/lib64
sudo chmod a+r /public/software/cuda-10.0/include/cudnn.h
sudo chmod a+r /public/software/cuda-10.0/lib64/libcudnn*
6、卸载cuDNN
因为是插入式设计,cuDNN的卸载也非常简单,只需要把相关文件删除就可以了。指令如下:
rm –rf /usr/local/cuda-9.1/include/cudnn.h
rm –rf /usr/local/cuda-9.1/lib64/libcudnn*
rm –rf /public/software/cuda-9.1/include/cudnn.h
rm –rf /public/software/cuda-9.1/lib64/libcudnn*
rm –rf /public/software/cuda-10.0/include/cudnn.h
rm –rf /public/software/cuda-10.0/lib64/libcudnn*
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)