Включение гибридной графики в Ubuntu на ноутбуках Nvidia + Intel (OpenGL, Vulkan)
Введение
Это простая инструкция как включить гибридную графику intel-nvidia на ноутбуке. Чтобы определенные приложения запускались на дискретном чипе, а другие на встроенном. На свое удивление в интернете не нашел простую инструкцию того, как запускать определенные приложения, используя дискретную графику. Так что напишу так просто, на сколько считаю нужным
У меня система KDE Neon 5.21 — по факту Ubuntu LTS с окружением рабочего стола KDE Plasma 5.21, видеочип GeForce MX150
1. Устанавливаем драйвер
a) Если у вас система на Qt (Как правило окружение KDE или LXQt), то с помощью данной команды через терминал загрузим программу для установки драйверов:
sudo apt install software-properties-qt
Если у вас система на GTK то с помощью это команды:
sudo apt install software-properties-gtk
Хотя разницы принципиальной нет
b) Затем запускаем ее с правами root
sudo software-properties-qt
Можно так же добавить ярлык для запуска в меню приложений
Инструкция для KDE
В папке ~/.local/share/applications/ создадим файл software properties qt.desktop с таким содержанием
[Desktop Entry]
Categories=System;Settings;
Comment[ru_RU]=drivers
Comment=drivers
Exec=konsole -e "~/.local/share/applications/software-properties-qt.sh"
GenericName[ru_RU]=Установка драйверовs
GenericName=Установка драйверовs
Icon=systemsettings
MimeType=
Name[ru_RU]=software properties qtn
Name=software properties qtn
Path=
StartupNotify=true
Terminal=false
TerminalOptions=
Type=Application
X-DBUS-ServiceName=
X-DBUS-StartupType=
X-KDE-SubstituteUID=false
X-KDE-Username=
И файл software properties qt.sh в той же папке:
#! /bin/bash
echo software-properties-qt
sudo /usr/bin/software-properties-qt
После перезагрузки ярлык появится в меню
Но это далеко не обязательно, вполне достаточно запустить из консоли для наших целей настройки гибридной графики
c) Переходим на последнюю вкладку Additional drivers и устанавливаем нужный драйвер. Я выбрал самой последней версии, который не tested и не server
d) После установки перезагружаем устройство
2. Настраиваем видеокарту
a) Загружаем следующую программу:
sudo apt install nvidia-settings
И запускаем
b) Переходим в PRIME Profiles Здесь мы видим три пункта:
-
NVIDIA (Performance Mode)— работать только на дискретной графике. Сильно потребляет батарею в несложных задачах, а так же ноутбук начинает греться. Зато система работает намного быстрее, но это того не стоит. У меня после установки драйвера этот пункт включился автоматически -
NVIDIA On-Demand— некоторые приложения будут использовать дискретную графику nvidia, но по-умолчанию встроенная intel. Как запустить конкретное приложение с дискретной графикой напишу дальше -
NVIDIA (Power Saving Mode)— отключение дискретной графики
Выбираем второй вариант — NVIDIA On-Demand, и перезагружаем систему

3. Запуск приложения с использованием дискретной графикой
Это то, что сложнее всего гуглилось…
Для запуска приложения с использованием графики nvidia нужно задать для OpenGL две переменные среды:
__NV_PRIME_RENDER_OFFLOAD=1
__GLX_VENDOR_LIBRARY_NAME=nvidia
для Vulkan только:
__NV_PRIME_RENDER_OFFLOAD=1
Делать это надо перед командой для запуска приложения. Например, нам нужно запустить из терминала приложение program с использованием дискретной графики. Нужно вызвать его так:
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia program
Соответственно, если у приложения есть ярлык (.desktop) в меню приложений, то надо изменить команду запуска в ярлыке. В KDE Plasma нужно нажать на него ПКМ, открыть свойства (или «изменить приложение…»), перейти во вкладку «приложение» и перед командой приписать данную приставку. В других средах похожего стола примерно так же

Можно сделать это же действие через текстовый редактор. Открываем ярлык, находим Exec=, и приписываем перед коммандой данную приставку __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia
Например, Minecraft

Заключение
Данный метод, как я понял, точно работают для програм, использующих библиотеки OpenGL и Vulkan. У меня, к сожалению, не получилось запустить так Windows приложение через Wine, которое использует DirectX, но это уже совсем другая история.
Новых героев Gears of War: E-Day раскритиковали, а бывший продюсер объяснила, в чем проблема
Games Workshop показала семь новых батлфорсов для настольной игры Warhammer 40,000
Бомбора» представила новую обложку книги «Heroes of Might and Magic. Пошаговая история бессмертной серии
От «Метро» до «Детства»: как видеоигры торгуют нашим прошлым
Capcom чуть не лишилась Resident Evil: разработка седьмой части шла не по плану
Сотрудник магазина видеоигр во Франции преградил путь мародёрам, а видео с этим распространилось в сети
Косплеерша показала образ Анны-Генриетты из «Ведьмака 3», справедливой, но скорой на расправу княгини Туссента
Gravity Defied: мотоциклист-палочка бросает вызов гравитации