“发布超时并被终止”与Bumblebee在Linux上的错误

时间:2013-06-27 06:16:46

标签: linux cuda optimus

在使用Bumblebee的支持CUDA的GeForce GPU上运行长内核(特别是在带有一些内存检查的调试模式下)时,我收到以下错误:

  

CUDA错误6:启动超时并被终止

这似乎是由NVIDIA驱动程序的监视器引起的。有一个解决方案here。但是,为什么在使用Bumblebee和optirun运行简单的CUDA内核时会发生这种情况(即我不使用我的NVIDIA GPU进行显示)?

我用来启动该程序的命令是:

optirun [cuda-memcheck] ./my_program program_options

1 个答案:

答案 0 :(得分:4)

解决方案(找到here)是对--no-xorg使用optirun选项,即:

optirun --no-xorg [cuda-memcheck or cuda-gdb] ./my_program program_options

实际上,optirun的默认行为是创建一个辅助X服务器,然后服务于驱动程序的监视程序。通过使用--no-xorg选项,我们可以避免这个额外X服务器的不必要后果。自Bumblebee 3.2以来可以使用此新选项。

它还提供了一种使用cuda-gdb并避免以下错误的方法:

  

致命:所有CUDA设备都用于显示,不能使用   调试。 (错误代码= 24)