CUDA:nVidia 卡已落伍

CUDA:nVidia 卡已落伍

我开始使用 CUDA 进行编程,但面临一个很难解决的问题:一段时间后系统出现错误:

NVRM:位于 0000:03:00.0 的 GPU 已从总线上脱落

并且需要关闭计算机才能再次检测 nVidia 卡。

起初我以为是我的代码出了问题:如果我运行同一个可执行文件 1000 次,前 200 次迭代可以正常输出相同的输出,但随后系统出现上述错误,并且所有剩余迭代都出现错误。然后我从 cuda 中取出 matrixMul 示例,对其进行编译,并运行 1000 次。第 200 次迭代左右发生了相同的错误!。这让我想到了驱动程序问题。

因此,不幸的是没有任何成功,我使用以下方法测试了相同的程序:

  • 几个驱动程序,一些旧的(谷歌搜索结果表明可以解决问题),最新的长寿命,最新的实验,测试版等。
  • 带有上述驱动程序的 Cuda 5 和 Cuda 4.2
  • 我启动时只显示文本,没有
  • 我完全删除了 xorgserver
  • 已启用持久模式。
  • 论坛中和谷歌搜索后提出了几种解决方案。

先前的方法均无效。

请记住这个非常简单的测试:我编译了 matrixMul 示例(使用 jusf make)并运行可执行文件 1000 次。我也在我的 macbook pro 上测试了这一点,一切顺利(当然,SO、卡等不同)。我现在一无所知。

我还没有测试过:

  • 另一个内核版本。
  • 另一个 Linux 发行版(绝望的解决方案)。

这是我的系统信息:

  • Ubuntu 12.04.2
  • CUDA 5
  • 当前驱动程序版本:313.30(直接从 nvidia 下载)
  • Ubuntu 内核:3.2。
  • g++ 版本:4.6
  • nVidia 显卡:Quadro 4000 (GF 100)

如果您有任何建议,请告诉我。提前致谢。

相关内容