这将是一篇相当长的文章,因为我想提供大量关于我已经尝试过但不起作用的方法的细节和信息
我刚刚在 2012 年中 15 英寸 Macbook Pro(型号 9,1)上安装了 Ubuntu 18.04.1。
我希望能够切换集成和独立 GPU 之间。目前我的系统锁定在独立 GPU,即 nvidia 650m。
首先,我正在运行 EFI 启动,因此 Ubuntu 确实能够识别两个 GPU。
$ lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation GK107M [GeForce GT 650M Mac Edition] (rev a1)
我目前正在使用该nvidia-driver-390
驱动程序。
除此之外,我还安装了nvidia-prime
和nvidia-settings
软件包。prime-select
列出了集成显卡和独立显卡的配置文件,我可以在它们之间切换
$ sudo prime-select
Usage: /usr/bin/prime-select nvidia|intel|query
$ sudo prime-select nvidia
Info: selecting the nvidia profile
$ sudo prime-select intel
Info: selecting the intel profile
但是,即使选择了intel
配置文件并重新启动后,我的计算机仍会继续使用独立显卡渲染所有内容。我知道这一点,因为如果我运行glmark2
,我会看到
glmark2
它本身会报告我的 650m 中使用的 OpenGL 渲染器$ glmark2 ....................................................... glmark2 2014.03+git20150611.fa71af2d ....................................................... OpenGL Information GL_VENDOR: NVIDIA Corporation GL_RENDERER: GeForce GT 650M/PCIe/SSE2 GL_VERSION: 4.6.0 NVIDIA 390.77 ....................................................... [build] use-vbo=false: FPS: 3846 FrameTime: 0.260 ms ....................................................... glmark2 Score: 3846 .......................................................
nvidia-settings 还存在另一个问题,即它不显示“PRIME 配置文件”选项卡,如图所示其他 指南
prime-select
虽然我不确定,但什么都不做可能与缺少“主要配置文件”选项卡有关。
与此同时,我在网上找到了很多“解决方案”,但都没有奏效。我会在这里列举这些解决方案(所有这些更改都已恢复)
使用专有驱动程序(我已经使用专有驱动程序,只是想提一下这一点)
尝试使用14.04+ 版说明请见此处。这只是阻止了图形显示管理器启动,然后我不得不卸载。此外,无论它做了什么配置,安装专有驱动程序实际上也会触发同样的问题,本质上使专有驱动程序无法卸载(在尝试安装 Bumblebee 之前,我能够正常安装它们)
此来源建议将 Nouveau 列入黑名单将解决此问题。我尝试了此处给出的解决方案,但没有结果
我实际上尝试按照说明完全禁用独立卡这里但最终却完全禁用了图形(我甚至无法进入 GRUB,我不得不使用实时 USB 来恢复更改)
无论如何,如果需要,我可以提供更多细节,但我希望有人能够提供帮助。本指南看起来很有希望,但我不太清楚如何将它翻译成 Ubuntu。
无论如何,我可以根据需要提供更多细节,但我希望有人能够提供帮助。
编辑1:
根据要求,我获得了一些关于为什么我尝试在没有专有驱动程序的情况下运行的信息。
如果我运行sudo apt-get purge nvidia*
并重新启动,一切看起来都很好。一些诊断:
$ sudo lshw -c video
*-display
description: VGA compatible controller
product: GK107M [GeForce GT 650M Mac Edition]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
configuration: driver=nouveau latency=0
resources: irq:45 memory:c0000000-c0ffffff memory:90000000-9fffffff memory:a0000000-a1ffffff ioport:2000(size=128) memory:c1000000-c107ffff
*-display
description: VGA compatible controller
product: 3rd Gen Core processor Graphics Controller
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 09
width: 64 bits
clock: 33MHz
capabilities: msi pm vga_controller bus_master cap_list
configuration: driver=i915 latency=0
resources: irq:47 memory:c1400000-c17fffff memory:b0000000-bfffffff ioport:3000(size=64)
现在跑步glmark2
让我
$ glmark2
.......................................................
glmark2 2014.03+git20150611.fa71af2d
.......................................................
OpenGL Information
GL_VENDOR: nouveau
GL_RENDERER: NVE7
GL_VERSION: 3.0 Mesa 18.0.5
.......................................................
[build] use-vbo=false: FPS: 751 FrameTime: 1.332 ms
.......................................................
glmark2 Score: 751
.......................................................
我仍然认为我的集成 GPU 没有被使用。帧时间增加了四倍,但这可能只是Nouveau 运行缓慢。此外,GL_VENDOR
字符串是nouveau
,它仅被列为我的独立显卡的驱动程序(如果使用集成显卡,我期望i915
根据的输出看到lshw
)。
值得一提的是,如果我重新安装该nvidia-settings
软件包,那么“Nvidia X 服务器设置”应用程序就会变得简单得多