<分区>
我最近安装了带有驱动程序 331.67 的 cuda 工具包 5.5(我有一个 GeForce GTX 680)。出于某种原因,我无法运行任何测试脚本:
$./NVIDIA_CUDA-5.5_Samples/1_Utilities/deviceQuery/deviceQuery
./NVIDIA_CUDA-5.5_Samples/1_Utilities/deviceQuery/deviceQuery Starting...
CUDA Device Query (Runtime API) version (CUDART static linking)
cudaGetDeviceCount returned 38
-> no CUDA-capable device is detected
Result = FAIL
我按照此处“入门指南”中的步骤操作
http://docs.nvidia.com/cuda/cuda-getting-started-guide-for-linux/
并制作了一个脚本来在启动时创建字符设备文件(因为我正在运行 Ubuntu 的服务器版本,因此默认情况下不会创建此类图形文件):
$ls -l /dev/nvidia*
crw-rw-rw- 1 root root 195, 0 Apr 11 17:29 /dev/nvidia0
crw-rw-rw- 1 root root 195, 255 Apr 11 17:29 /dev/nvidiactl
执行命令 nvidia-smi -a
的输出是(对于普通用户和 root 用户):
Failed to initialize NVML: Unknown Error
这里是一些关于nvidia模块的信息
$ lsmod | grep nvidia
nvidia 11335080 0
$ modinfo nvidia
filename: /lib/modules/3.11.0-17-generic/updates/dkms/nvidia.ko
alias: char-major-195-*
version: 331.67
supported: external
license: NVIDIA
...
...
有什么建议吗?谢谢。
编辑#1 我尝试降级到驱动程序 319.76:
$ modinfo nvidia
filename: /lib/modules/3.11.0-17-generic/updates/dkms/nvidia.ko
alias: char-major-195-*
version: 319.76
supported: external
...
现在,当我运行 nvidia-smi -a
时,我得到以下信息:
NVIDIA: API mismatch: the NVIDIA kernel module has version 304.116,
but this NVIDIA driver component has version 319.76. Please make
sure that the kernel module and all NVIDIA driver components
have the same version.
Failed to initialize NVML: Unknown Error
在安装驱动程序文件之前,我从存储库安装了 nvidia-current-updates
和 nvidia-settings-updates
包,我想这就是冲突发生的地方。我还没有找到解决方案,但我认为这更近了一步。这是 modprobe -l | 的结果grep 英伟达
kernel/drivers/video/nvidia/nvidiafb.ko
kernel/drivers/net/ethernet/nvidia/forcedeth.ko
updates/dkms/nvidia.ko
updates/dkms/nvidia_304_updates.k