目前正在处理大量信息,需要帮助。
我有一台 Dell Latitude E5570,它配备了混合显卡,Intel/AMD 如下:
$inxi -Fzx
Graphics: Card-1: Intel HD Graphics 530 bus-ID: 00:02.0
Card-2: Advanced Micro Devices [AMD/ATI] Mars [Radeon HD 8670A/8670M/8750M] bus-ID: 01:00.0
Display Server: x11 (X.Org 1.19.6 ) drivers: i915,radeon Resolution: [email protected]
OpenGL: renderer: Mesa DRI Intel HD Graphics 530 (Sk
我尝试过使用 switcheroo,但似乎不起作用。 https://www.dell.com/support/article/au/en/auchn1/sln298475/a-guide-to-hybrid-video-on-dell-pcs-with-an-ubuntu-operating-system?lang=en
另外,我在这里安装了 AMD 的专有驱动程序: https://support.amd.com/en-us/kb-articles/Pages/Radeon-Software-for-Linux-18.20-Early-Preview-Release-Notes.aspx
这似乎有效,但在启动 Steam 游戏时,我收到了有关 OpenGL 不兼容的错误。为了修复这个问题,我最终遇到了启动循环和非常不稳定的系统。
编辑-这就是我最终启动循环的方式...... https://linuxconfig.org/how-to-install-the-latest-amd-radeon-drivers-on-ubuntu-18-04-bionic-beaver-linux
我现在已经完成了全新安装,并且一切都恢复正常,没有其他问题 - 寻求建议。
只是为了完整性,您还可以测试您的 Steam 游戏,它是否也使用 amdgpu 驱动程序在 AMD 上以 100 FPS 运行?
我已经这样做了,并且可以确认 Steam 游戏(Portal)使用 radeon 和 amdpgu 驱动程序都可以轻松达到 100 FPS - 没有明显的区别 - 但使用 Ubuntu 附带的 radeon 驱动程序而不是专有的 amdgpu 驱动程序会少很多麻烦。
答案1
我有完全相同的设置(Intel Latitude E5570/混合显卡,Intel/AMD)。我最近安装了 Ubuntu 18.04。
以下是我的经历:
虽然我标记了安装用于图形和 Wi-Fi 硬件以及其他媒体格式的第三方软件在安装过程中,附加驱动程序选项卡软件与更新software-properties-gtk
(在终端中输入此命令)声称没有可用的附加驱动程序。你遇到过同样的情况吗?也许有人知道原因。在安装任何专有驱动程序之前,我决定先测试原始安装,然后再做其他事情。
lspci -k | grep -EA3 'VGA|Display'
给出以下输出
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06)
Subsystem: Dell HD Graphics 530
Kernel driver in use: i915
Kernel modules: i915
--
01:00.0 Display controller: Advanced Micro Devices, Inc. [AMD/ATI] Mars [Radeon HD 8670A/8670M/8750M] (rev 81)
Subsystem: Dell Mars [Radeon HD 8670A/8670M/8750M]
Kernel driver in use: radeon
Kernel modules: radeon, amdgpu
我猜最后一行是关于内核模块的图形处理器意味着 OpenSource 驱动程序已安装(有人可以确认这一点吗?)。有关 Ubuntu 的 AMD 驱动程序的更多信息,请参见在 Ubuntu 帮助 wiki 上。
除了 switcheroo 之外,还有另一种方法可以在 GPU 之间切换xrandr
:
使用xrandr
(如第二个链接所述)使用以下命令来显示提供商:
xrandr --listproviders
我的输出是
Providers: number : 2
Provider 0: id: 0x6b cap: 0x9, Source Output, Sink Offload crtcs: 3 outputs: 7 associated providers: 1 name:modesetting
Provider 1: id: 0x41 cap: 0x6, Sink Output, Source Offload crtcs: 2 outputs: 0 associated providers: 1 name:OLAND @ pci:0000:01:00.0
为了能够通过更强大的独立显卡来渲染 GPU 密集型应用程序
xrandr --setprovideroffloadsink 1 0
现在你应该能够为你的应用程序选择一个 GPU。例如,你可以使用命令(使用glxinfo
, sudo apt install mesa-utils
)进行测试,我发现在 Ubuntu 论坛上:
DRI_PRIME=0 glxinfo | grep "OpenGL renderer"
DRI_PRIME=1 glxinfo | grep "OpenGL renderer"
所以我做了一个基准测试(使用glmark2,sudo apt install glmark2
)使用以下命令对两个 GPU 进行操作:
DRI_PRIME=0 glmark2 --fullscreen
DRI_PRIME=1 glmark2 --fullscreen
最终得分为:
- 507为了英特尔集成 GPU
- 367为了AMD 独立 GPU
这很奇怪,因为我认为 AMD GPU 的性能应该比集成的 Intel GPU 更好。你对此的结果是什么?你能证实这一点吗?
您还可以使用所述命令在独立 GPU 上测试启动 Steam xrandr
。
也许我还会安装专有的 AMD GPU 驱动程序(amdgpu-pro
)并重复基准测试。我希望这会有所帮助,尤其是有关切换 GPU 的替代方法的部分。
答案2
就我而言(HP 15-N,Radeon 8670m),我遇到了同样的问题,但我修复了它。之前是:
$ xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x64 cap: 0x9, Source Output, Sink Offload crtcs: 3
outputs: 2 associated providers: 1 name:modesetting
Provider 1: id: 0x3f cap: 0x4, Source Offload crtcs: 0 outputs: 0
associated providers: 1 name:HAINAN @ pci:0000:0a:00.0
$ lspci -k | grep -EA3 'VGA|3D|Display'
00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT
Integrated Graphics Controller (rev 09)
Subsystem: Hewlett-Packard Company Haswell-ULT Integrated Graphics
Controller
Kernel driver in use: i915
Kernel modules: i915
--
0a:00.0 Display controller: Advanced Micro Devices, Inc. [AMD/ATI] Sun
XT [Radeon HD 8670A/8670M/8690M / R5 M330 / M430] (rev ff)
Kernel driver in use: radeon
Kernel modules: radeon, amdgpu
amdgru-pro
安装修复后,我以为它有用,但我错了。原因很简单,amdgru-pro
它不适用于 Unix 系统上的旧视频卡。如果你安装它,你可能会遇到和我一样的错误。(抱歉,我没有截图。有一个黑屏,上面有一些文字,上面说我没有正确安装驱动程序。)
重新安装 Ubuntu 后,我按照以下步骤解决了该问题listproviders
:
$ xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x64 cap: 0x9, Source Output, Sink Offload crtcs: 3
outputs: 2 associated providers: 1 name:modesetting
Provider 1: id: 0x3f cap: 0x4, Source Offload crtcs: 0 outputs: 0
associated providers: 1 name:HAINAN @ pci:0000:0a:00.0
在那之后:
$ xrandr --setprovideroffloadsink 0x3f 0x64
Steam 测试显示结果(例如 cs 在最低-中等~60 +- fps 上进行),
但是在调用需要 AMD Radeon 的某个程序之前,我关闭了它并在终端中写道:
$ DRI_PRIME=1 steam # or some program (e.g. openshot)
您也可以这样做或通过以下方式检查您的错误关联。