Гибридная графика Intel/AMD Ubuntu 18.04
Работаем через минное поле информации на данный момент и нуждаемся в помощи.
У меня есть 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: 1920x1080@60.00hz
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, работает ли она на 100 FPS на AMD, используя драйвер amdgpu?
Я сделал это и могу подтвердить, что игра Steam (Portal) легко наберет 100 FPS с драйверами radeon и amdpgu - без заметной разницы - но гораздо меньше головной боли, используя драйверы radeon, поставляемые с Ubuntu, а не проприетарные драйверы amdgpu.
2 ответа
У меня точно такая же настройка (Intel Latitude E5570 / Hybrid Graphics, Intel/AMD). Я установил Ubuntu 18.04 совсем недавно.
Вот мой опыт:
Хотя во время установки я отмечал Установка стороннего программного обеспечения для графики, оборудования Wi-Fi и дополнительных форматов мультимедиа, вкладка " Дополнительные драйверы " в разделе " Программное обеспечение и обновления" (для доступа к этому типу software-properties-gtk
в терминале) утверждает, что никаких дополнительных драйверов нет. Вы испытали то же самое? Может кто знает почему. Перед установкой любых проприетарных драйверов я решил проверить установку vanilla, прежде чем делать что-либо еще.
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
Я предполагаю, что последняя строка о модуле ядра amdgpu означает, что установлены драйверы OpenSource (кто-нибудь может подтвердить это?). Более подробную информацию о драйверах AMD для Ubuntu можно найти здесь в справочной вики Ubuntu.
Помимо switcheroo есть еще одна возможность переключаться между графическими процессорами, используя 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
Чтобы можно было рендерить приложения с интенсивным использованием графических процессоров, используя более мощную дискретную карту
xrandr --setprovideroffloadsink 1 0
Теперь вы сможете выбрать графический процессор для своего приложения. Например, вы можете проверить это с помощью команды (используя 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
) для обоих графических процессоров, используя следующие команды:
DRI_PRIME=0 glmark2 --fullscreen
DRI_PRIME=1 glmark2 --fullscreen
Итоговая оценка была:
- 507 для интегрированного графического процессора Intel
- 367 для AMD descrete GPU
Это странно, так как я думал, что AMD GPU должен быть более производительным, чем интегрированный Intel GPU. Каковы ваши результаты на этом? Вы можете это подтвердить?
Вы также можете протестировать запуск Steam на дискретном графическом процессоре, используя xrandr
команды.
Может быть, я также установлю проприетарные драйверы AMD GPU (amdgpu-pro
) и повторите тесты. Я надеюсь, что это полезно, особенно части, касающиеся альтернативного способа переключения графических процессоров.
В моем случае (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
проверка результатов парового шоу (например, cs go на минимальной-средней скорости ~60 +- fps),
но перед вызовом какой-нибудь программы, которая требует Amd radeon, закройте их и напишите в терминал:
$ DRI_PRIME = 1 пара или какая-то программа (например, openshot)
Также вы можете сделать это или проверить свою ошибку по ссылке ниже:
https://www.youtube.com/watch?v=9AaxjX-Zo-k&feature=youtu.be