1

我正在尝试在带有 GeForce GTX 590 的 Ubuntu 10.04 系统上运行 cuda 应用程序
。我正在使用 295.41 驱动程序。我已经使用此代码设置了 3 个其他系统,并且都可以正常工作。其中两个有 GT 640,一个有 GTX 480(或 460——我不太记得了)。我以前在这台机器上用相同的硬件运行过 cuda 代码,但它已经被格式化了。

当我运行我的代码以及运行 SDK 示例时,我得到了无效的设备序号错误。我用 gentoo 设置了这台机器并得到了这个错误 - 我认为它可能与操作系统有关,所以我安装了 ubuntu 并遇到了同样的问题。我想不出还有什么可以尝试的。有没有人有什么建议?

下面是一些可能很方便的输出。

用户@pchan1:~$ lspci | grep nVidia
02:00.0 PCI 桥:nVidia Corporation 设备 05b1 (rev a3)
03:00.0 PCI 桥:nVidia Corporation 设备 05b1 (rev a3)
03:02.0 PCI 桥:nVidia Corporation 设备 05b1 (rev a3)
06:00.0 PCI 桥: nVidia Corporation 设备 05b9 (rev a3)
07:00.0 PCI 桥:nVidia Corporation Device 05b9 (rev a3)
07:02.0 PCI 桥:nVidia Corporation Device 05b9 (rev a3)
08:00.0 3D 控制器:nVidia Corporation Device 1088 (rev a1)
08:00.1 音频设备:nVidia Corporation 设备 0e09 (rev a1)
09:00.0 VGA 兼容控制器:nVidia Corporation Device 1088 (rev a1)
09:00.1 音频设备:nVidia Corporation Device 0e09 (rev a1)

user@pchan1:~$ ls -l /dev/nvidia*
crw-rw-rw- 1 根 195, 0 2012-10-30 10:22 /dev/nvidia0
crw-rw-rw- 1 根 195, 1 2012-10-30 10:22 /dev/nvidia1
crw-rw-rw- 1 根 195、255 2012-10-30 10:22 /dev/nvidiactl

编辑:当我让这个系统工作时,我使用的是 64 位操作系统和 64 位驱动程序。我现在使用的是 32 位操作系统和 32 位驱动程序。

另一个编辑:

非常感谢 Przemyslaw Zych。你帮我解决了问题。我必须通过执行以下操作将 Nouveau 列入黑名单。在 /etc/modprobe.d 中添加一个名为 blacklist-nouveau.conf 的文件(只是 .conf 结尾很重要),并在该文件中放入以下两行。
blacklist nouveau
options nouveau modeset=0
按照以下指南
ftp://download.nvidia.com/XFree86/Linux-x86_64/256.44/README/commonproblems.html的说明

问题解决了 :)

4

1 回答 1

2

正如 Przemyslaw Zych 所建议的那样,还有另一个使用 GPU 的驱动程序(在本例中为 nouveau)。
要使用 nvidia 驱动程序 nouveau,必须禁用。该过程在此处列出 - ftp://download.nvidia.com/XFree86/Linux-x86_64/256.44/README/commonproblems.html - 我将在下面进行总结。

在 /etc/modprobe.d 中创建一个名为 blacklist-nouveau.conf 的文件
添加以下两行:
blacklist nouveau
options nouveau modeset=0
然后重启电脑。这应该可以防止加载 nouveau 并允许使用 nvidia 驱动程序。

于 2012-10-31T07:32:25.653 回答