背景:Kubuntu 14.04,配备两个显卡的 Gigabyte p3 笔记本电脑:
*-display
description: 3D controller
product: GM107M [GeForce GTX 860M]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a2
width: 64 bits
clock: 33MHz
capabilities: bus_master cap_list rom
configuration: driver=nvidia latency=0
resources: irq:16 memory:f5000000-f5ffffff memory:e0000000-efffffff memory:f0000000-f1ffffff ioport:e000(size=128) memory:f6000000-f607ffff
*-display
description: VGA compatible controller
product: 4th Gen Core Processor Integrated Graphics Controller
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 06
width: 64 bits
clock: 33MHz
capabilities: vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:49 memory:f6400000-f67fffff memory:d0000000-dfffffff ioport:f000(size=64)
Cuda 8.0 需要 Nvidia 卡的最新驱动程序,因此我从 Nvidia 的网站安装了它,然后从这里。现在,cuda 可以工作了。但是,当我运行glxinfo,我得到
name of display: :0
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
Error: couldn't find RGB GLX visual or fbconfig
Xlib: extension "GLX" missing on display ":0".
等等。如果您查看之前显示的 lshw 的输出,它会显示显示 0 是 NVIDIA 卡。我尝试安装 bumblbee,但它似乎在 14.04 上与最近的驱动程序配合使用效果不佳(启动到黑屏、登录循环等)。在最好的情况下,OpenGL 可以工作,但后来我失去了 Cuda。因此,非常欢迎对这些问题的任何澄清:
- 为什么正确识别 GPU 时 openGL 程序会失败?
- 有没有办法强制 openGl 程序使用显示器 1(英特尔卡)?
编辑: 使用 NVIDIA 网站上的 Debian 软件包代替其 *.run 脚本可以解决该问题。但是,我仍然不明白为什么以及如何解决。这是其脚本中的错误吗?