我能不能在我的optimus笔记本电脑上以英特尔集成显卡运行X11并在NVIDIA GPU上调试CUDA代码?

时间:2013-10-23 08:14:28

标签: ubuntu cuda nsight

我知道我可以在没有GUI的情况下使用cuda-gdb在linux上调试CUDA,但这并不是很方便。我也知道如果X服务器在其他GPU上运行,可以使用Nsight Eclipse版本调试CUDA。    所以我有双GPU笔记本电脑(geforce 525m和Intel 3000),我想知道如果我的CUDA代码在我的nvidia卡上运行,我是否可以在Intel卡上运行X服务器?

3 个答案:

答案 0 :(得分:2)

如果您想尝试在笔记本电脑上运行此功能,首先应确保您的xorg.conf文件仅引用英特尔集成GPU。

然后,当您在Linux下运行时,您需要尝试确定笔记本电脑是否正在为Intel集成GPU和NVIDIA独立GPU供电。对于此测试,我将首先运行lspci如果该命令同时显示了intel图形和NVIDIA GPU,那么您可以尝试在此时安装CUDA工具包。当它询问您是否要更新xorg.conf文件时,请务必回答“否”。

之后它可能会起作用。如果它不起作用,您可能需要检查SBIOS机器配置选项,看看是否有一种方法可以强制启用NVIDIA GPU和Intel图形。

如果您能够获得由Intel图形托管的显示器,并且CUDA工具包已加载且功能正常,那么您应该可以在该NVIDIA GPU上进行调试。

答案 1 :(得分:0)

我正在回答因为我还不能发表评论。

我不确定,但我认为这不是Debian的问题。 2个月前我使用的是Debian而不是Ubuntu(CUDA 5.0)并且能够使用X服务器并使用cuda-gdb(我不确定是否可以调试内核函数,但我认为是这样)。

当使用CUDA 5.5更改为Ubuntu时,我需要在文本模式下启动Ubuntu来调试内核函数。

所以,如果你可以尝试,我建议尝试使用Debian。 :)

答案 2 :(得分:0)

在我看来这个解决方案并不好,但它可以在笔记本电脑华硕B400V的Ubuntu 16.04上运行。

  1. 使用英特尔图形卡启动XServer(Nvidia XServer设置或sudo prime-select intel;您需要注销并登录)。
  2. 运行命令sudo prime-select nvidia,不注销。
  3. 运行命令sudo tee /proc/acpi/bbswitch <<< ON
  4. 执行此步骤后,我可以调试我的CUDA程序。 在重新启动或注销之前,您需要运行命令sudo prime-select intel