CUDA: 8.0
CUDNN: 5.1
NVIDIA: 375.66
这个问题真是, RLGL....
感觉还是因为服务器造成的问题.
花了点时间才解决掉.
先是 ./deviceQuery
遇到问题:
CUDA Device Query (Runtime API) version (CUDART static linking)
modprobe: FATAL: Module nvidia-uvm not found.
cudaGetDeviceCount returned 30
-> unknown error
Result = FAIL
先试试这个方法, 不管用再试方法二
已经编译安装好nvidia-uvm, 只是没找对
sudo modinfo nvdia
sudo modinfo nvidia-uvm
sudo update-alternatives --config x86_64-linux-gnu_gl_conf
显示:
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/nvidia-375/ld.so.conf 8604 auto mode
1 /usr/lib/nvidia-375-prime/ld.so.conf 8603 manual mode
2 /usr/lib/nvidia-375/ld.so.conf 8604 manual mode
3 /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf 500 manual mode
如果问题没解决, 或者没有类似0,1,2的选项. 看方法二.
方法一参考自: https://devtalk.nvidia.com/default/topic/760872/cuda-setup-and-installation/ubuntu-12-04-error-cudagetdevicecount-returned-30/
http://blog.csdn.net/ddqqfree123/article/details/52388337
因为是在服务器centos6.9系统上运行daocker中ubuntu14.04系统..哈哈..有点绕..
我看了一下, ubuntu的系统内核跟centos6.9走的, 我刚把centos6.9内核升级到了3.10.107
但是ubuntu系统内并没有3.10.107内核的头文件啊什么的, 所以也就没有nvidia-uvm
下面开始处理这些问题
先检查几个文件夹内容, 如果发现ubuntu没有相关内核的文件夹, 就从centos主机中拷贝过来
如果你是Centos系统可以直接运行:
sudo yum install -y kernel-devel kernel-headers
几个主要文件夹路径是:
/var/lib/dkms/nvidia/original_module
/var/lib/dkms/nvidia/kernel-3.10.107-1.el6.elrepo.x86_64-x86_64 这个目录是软链接的下面目录
/var/lib/dkms/nvidia/375.66/3.10.107-1.el6.elrepo.x86_64
/lib/modules/3.10.107-1.el6.elrepo.x86_64
/lib/modules/3.10.107-1.el6.elrepo.x86_64/build 删除这个目录并软链接的下面目录
/usr/src/kernels/3.10.107-1.el6.elrepo.x86_64/
上面这些目录, 哪个没有, 就从centos主机中拷贝过来!!
docker拷贝命令:
sudo docker cp FILENAME CONTAINER-ID:/PATH/
开始编译安装nvidia-uvm:
sudo dkms status
我的显示:
nvidia-375, 375.66: added
sudo dkms build -m nvdia-375 -v 375.66
sudo dkms install -m nvdia-375 -v 375.66
sudo modinfo nvdia
sudo modinfo nvidia-uvm
PASS!
方法二参考自: http://blog.csdn.net/yijuan_hw/article/details/53439408