Я установил Nvidia собственный драйвер на Ubuntu 19.10.
В разделе Prime Profiles существует три опции:
* NVIDIA (режим производительности)
* NVIDIA, по запросу
* Intel (Power Saving Mode)
Первые и последние опции довольно очевидны, Но я не знаю, как вторая опция работает. Как это обнаруживает, для какого приложения нужен драйвер NVIDIA и который не делает?
Хорошо я наконец понял это. Как в этот момент, кажется, что NVIDIA может сделать, разгружают рендеринг для приложений Volkan и OpenGL.
Для включения, это разгружает рендеринг, необходимо поставить Главный профиль, "По запросу", затем для volkan разгрузка, необходимо вставить эту переменную Ваш etc/environment
файл:
__NV_PRIME_RENDER_OFFLOAD=1
Для приложений OpenGL необходимо поместить эти переменные:
__NV_PRIME_RENDER_OFFLOAD=1
__GLX_VENDOR_LIBRARY_NAME=nvidia
После перезапуска это запустит разгрузку рендеринга.
Для проверки, какая видеокарта используется, можно ввести следующую команду в терминал:
glxinfo | grep vendor
От: Часть I. Инструкции по установке и настройке
Разгрузка рендеринга PRIME - это возможность визуализировать X-экран одним графическим процессором, но выбирать определенные приложения в этом X экран для рендеринга на другом графическом процессоре. Это особенно полезно в сочетании с динамическим управлением питанием, чтобы оставить GPU NVIDIA выключенным, за исключением случаев, когда это необходимо для рендеринга некоторых приложений, чувствительных к производительности.
Графический процессор, визуализирующий большую часть экрана X, известен как «приемник», а графический процессор, на который «выгружается» визуализация определенных приложений, известен как «источник». Источник разгрузки рендеринга создает контент, который представлен в приемнике разгрузки рендеринга. Драйвер NVIDIA может функционировать как источник разгрузки рендеринга PRIME, чтобы разгрузить рендеринг GLX + OpenGL или Vulkan, представляя их на X-экране, управляемом X-драйвером xf86-video-modesetting.
Поддержка разгрузки рендеринга NVIDIA PRIME требует следующих коммитов git на X.Org-сервере:
7f962c70 - xsync: добавить ресурс внутри SyncCreate, экспортировать SyncCreate
37a36a6b - GLX: добавить сопоставление поставщиков для каждого клиента
8b67ec7c - GLX: использовать отправляющего клиента для поиска XID
56c0a71f - GLX: добавить функцию для изменения списка поставщиков клиентов
b4231d69 - GLX: установить GlxServerExports :: {major , minor} Версия
На момент написания эти коммиты есть только в главной ветви X-сервера X.Org и еще не в каком-либо официальном выпуске X.Org X-сервера.
как расширение для Ответ М. Наримани : Я могу подтвердить, что это действительно работает для меня на kubuntu 19.10 с драйвером nvidia версии 440
некоторую справочную информацию можно найти в Глава 34. PRIME Render Offload
вы также можете установить опцию «по требованию» в графическом интерфейсе: Настройки сервера Nvidia X - Профили PRIME: NVIDIA On-Demand
, затем перезапустите.
затем вы можете запустить свое приложение с переменными среды также непосредственно из командной строки, чтобы при необходимости можно было переключать графические процессоры:
stefan@stefan-Zen:~$ glxheads :0
Name: :0
Display: 0x556081a45d40
Window: 0x7000002
Context: 0x556081a64a70
GL_VERSION: 3.0 Mesa 19.2.8
GL_VENDOR: Intel Open Source Technology Center
GL_RENDERER: Mesa DRI Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)
stefan@stefan-Zen:~$ __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxheads :0
Name: :0
Display: 0x55f6dd9097a0
Window: 0x7000002
Context: 0x55f6dd944878
GL_VERSION: 4.6.0 NVIDIA 440.64
GL_VENDOR: NVIDIA Corporation
GL_RENDERER: GeForce RTX 2060/PCIe/SSE2