使用 Nvidia Optimus 和 Bumblebee 运行带有 CUDA 的 OpenGL 应用程序

使用 Nvidia Optimus 和 Bumblebee 运行带有 CUDA 的 OpenGL 应用程序

我正在尝试使用我的旧笔记本电脑和混合 Nvidia GT650M/Intel iGPU 设置开始学习 CUDA。我尝试按照一些资源[1,2,3]上的说明进行操作。这些资源对我帮助很大,让我可以正常工作nvcc。但是,虽然大多数示例都已编译,但使用 OpenGL 的示例根本无法工作。我猜这是因为我安装的 OpenGL 驱动程序适用于我的 Intel GPU,但在安装 Nvidia 驱动程序期间,我被迫不安装 OpenGL 驱动程序,以避免覆盖我需要的旧驱动程序(适用于我的英特尔卡)。

是否可以在已安装的驱动程序旁边安装 nvidia opengl 驱动程序?NVIDIA*.run 脚本中似乎有一个标志,允许我更改 opengl 文件的安装目录,但我不知道这是否会弄乱一切或根本不起作用。

[1]如何让 nVidia CUDA 或 OpenCL 在装有 nVidia 独立卡/Intel 集成显卡的笔记本电脑上运行?

[2]如何在 Ubuntu 14.04 上使用 Bumblebee 安装 nVidia 驱动程序

[3](指南)为启用 Optimus 的笔记本电脑安装 Nvidia + Bumblebee + CUDA

答案1

我尝试使用运行文件安装在 Ubuntu 14.04.3 上安装 CUDA 7.5,因为从 CUDA 5.0 开始,这种方法对我来说就很管用。我有一台采用 Optimus 技术的笔记本电脑(Nvidia GT520M 独立显卡 + Intel 嵌入式显卡),因此我必须将“--no-opengl-libs”标志传递给安装程序脚本。我遵循了此处的 Nvidia 指南:CUDA_安装_指南_Linux.pdf。不幸的是,如果我想运行 OpenGL 示例并处理图形(不使用 OpenGL 的示例可以正常工作),这种方法就不可靠了。它给了我一个错误“cudaErrorDevicesUnavailable”。小心阅读安装指南会告诉你 CUDA 7.5 适用于 ubuntu 14.04 和内核版本 3.13!好的,没问题,我再次格式化分区并运行脚本……但它也不起作用。然后又小心阅读安装指南会告诉您,建议尽可能使用包管理器安装类型!因此删除了运行文件,安装了 cuda 驱动程序和工具包,并使用了 .deb 包。BAM!它运行起来非常好!:)

总之,在 Optimus 笔记本电脑上安装 CUDA 7.5 最简单且最安全的方法是:

  1. 安装 ubuntu 14.04 和 3.13(trusty)内核版本
  2. 按照 Nvidia 指南中的软件包管理器安装部分进行操作:CUDA_安装_指南_Linux.pdf

[编辑]

不幸的是,看来调试无法通过这种方式进行......

相关内容