Frequently Asked Questions
NVIDIA On-Demand is the home for NVIDIA resources from GPU Technology Conferences (GTCs) and other leading industry events. The content includes NVIDIA keynotes, technical and industry sessions, demos, research posters, and more.
Q: The content I am trying to access has a padlock. What do I need to do to access it?
Accessing NVIDIA On-Demand content may require login or membership in the NVIDIA Developer Program or an NVIDIA Account. When selecting locked content, you will be guided through the login or account creation process.
Q: What is the NVIDIA Developer Program?
The NVIDIA Developer Program is free to join, supports developers that are building on NVIDIA technology platforms, by providing access to industry-leading SDK, tools, training and more.
Q: How do I create an NVIDIA Account, which allows me to access business content?
Not all business content requires an NVIDIA Account. For those that do, please create an NVIDIA Account by following the instructions here
nvidia on demand linux что это
Видали, до чего этот мир докатился? Неужели нормальный оптимус в линуксах прям от производителя? Кто-нибудь у себя уже пробовал?
А хотелось бы понять, как именно работает механика этого ондеманда и похожа ли она на механизм работы бамблби или оно как-то само себе там будет решать, с какой видюхой запускать то или иное ПО


О, кажется, вот как оно работает:
Configure Graphics Applications to Render Using the GPU Screen To configure a graphics application to be offloaded to the NVIDIA GPU screen, set the environment variable __NV_PRIME_RENDER_OFFLOAD to 1. If the graphics application uses Vulkan, that should be all that is needed. If the graphics application uses GLX, then also set the environment variable __GLX_VENDOR_LIBRARY_NAME to nvidia, so that GLVND loads the NVIDIA GLX driver. NVIDIA’s EGL implementation does not yet support PRIME render offload.

NVIDIA’s EGL implementation does not yet support PRIME render offload.
На Wayland не заработает. Впрочем немногие композиторы wayland вообще будут работать на блобе. Но радоваться всё равно рано.

Ну кеды пока вообще на вяленом не работают например. Так что почему бы и не порадоваться уже этому:) В контексте того, что в бамблби никто не коммитил уже пять лет, это вообще отличная новость, имо
Тем временем завезли нормальный гуй для optimus на ubuntu

Собственно, это как раз под обновление драйвера, да. Но, как по мне, довольно бесполезно, раз достаточно один раз в официальной невидеевой тулзе включить on-demand и потом пользоватьза переменными окружения при запуске конкретных программ
Стоит 465 драйвер, при включенном ондеманде приложения чет запускаются все равно на встроенной карте. Или я не понял как она работает?
Включение гибридной графики в Ubuntu на ноутбуках Nvidia + Intel (OpenGL, Vulkan)
Введение
Это простая инструкция как включить гибридную графику intel-nvidia на ноутбуке. Чтобы определенные приложения запускались на дискретном чипе, а другие на встроенном. На свое удивление в интернете не нашел простую инструкцию того, как запускать определенные приложения, используя дискретную графику. Так что напишу так просто, на сколько считаю нужным
1. Устанавливаем драйвер
a) Если у вас система на Qt (Как правило окружение KDE или LXQt), то с помощью данной команды через терминал загрузим программу для установки драйверов:
Если у вас система на GTK то с помощью это команды:
Хотя разницы принципиальной нет
b) Затем запускаем ее с правами root
Можно так же добавить ярлык для запуска в меню приложений
Инструкция для KDE
/.local/share/applications/ создадим файл software properties qt.desktop с таким содержанием
И файл software properties qt.sh в той же папке:
После перезагрузки ярлык появится в меню
Но это далеко не обязательно, вполне достаточно запустить из консоли для наших целей настройки гибридной графики
c) Переходим на последнюю вкладку Additional drivers и устанавливаем нужный драйвер. Я выбрал самой последней версии, который не tested и не server

d) После установки перезагружаем устройство
2. Настраиваем видеокарту
a) Загружаем следующую программу:
b) Переходим в PRIME Profiles Здесь мы видим три пункта:

3. Запуск приложения с использованием дискретной графики
Это то, что сложнее всего гуглилось.
Для запуска приложения с использованием графики nvidia нужно задать для OpenGL две переменные среды:
Делать это надо перед командой для запуска приложения. Например, нам нужно запустить из терминала приложение program с использованием дискретной графики. Нужно вызвать его так:
Соответственно, если у приложения есть ярлык (.desktop) в меню приложений, то надо изменить команду запуска в ярлыке. В KDE Plasma нужно нажать на него ПКМ, открыть свойства (или «изменить приложение. «), перейти во вкладку «приложение» и перед командой приписать данную приставку. В других средах похожего стола примерно так же
Заключение
Данный метод, как я понял, точно работают для программ, использующих библиотеки OpenGL и Vulkan. У меня, к сожалению, не получилось запустить так Windows приложение через Wine, которое использует DirectX, но это уже совсем другая история. (OpenGL приложения под Wine работают)
Включение гибридной графики в Ubuntu на ноутбуках Nvidia + Intel (OpenGL, Vulkan)
Введение
Это простая инструкция как включить гибридную графику intel-nvidia на ноутбуке. Чтобы определенные приложения запускались на дискретном чипе, а другие на встроенном. На свое удивление в интернете не нашел простую инструкцию того, как запускать определенные приложения, используя дискретную графику. Так что напишу так просто, на сколько считаю нужным
1. Устанавливаем драйвер
a) Если у вас система на Qt (Как правило окружение KDE или LXQt), то с помощью данной команды через терминал загрузим программу для установки драйверов:
Если у вас система на GTK то с помощью это команды:
Хотя разницы принципиальной нет
b) Затем запускаем ее с правами root
Можно так же добавить ярлык для запуска в меню приложений
Инструкция для KDE
/.local/share/applications/ создадим файл software properties qt.desktop с таким содержанием
И файл software properties qt.sh в той же папке:
После перезагрузки ярлык появится в меню
Но это далеко не обязательно, вполне достаточно запустить из консоли для наших целей настройки гибридной графики
c) Переходим на последнюю вкладку Additional drivers и устанавливаем нужный драйвер. Я выбрал самой последней версии, который не tested и не server

d) После установки перезагружаем устройство
2. Настраиваем видеокарту
a) Загружаем следующую программу:
b) Переходим в PRIME Profiles Здесь мы видим три пункта:

3. Запуск приложения с использованием дискретной графикой
Это то, что сложнее всего гуглилось.
Для запуска приложения с использованием графики nvidia нужно задать для OpenGL две переменные среды:
Делать это надо перед командой для запуска приложения. Например, нам нужно запустить из терминала приложение program с использованием дискретной графики. Нужно вызвать его так:
Соответственно, если у приложения есть ярлык (.desktop) в меню приложений, то надо изменить команду запуска в ярлыке. В KDE Plasma нужно нажать на него ПКМ, открыть свойства (или «изменить приложение. «), перейти во вкладку «приложение» и перед командой приписать данную приставку. В других средах похожего стола примерно так же
Заключение
Данный метод, как я понял, точно работают для програм, использующих библиотеки OpenGL и Vulkan. У меня, к сожалению, не получилось запустить так Windows приложение через Wine, которое использует DirectX, но это уже совсем другая история.
Nvidia prime
Содержание
Установка
проверить, что Nvidia включена можно командой
Чтобы установить Nvidia Prime и проприетарный драйвер nVidia вам нужно открыть терминал Ctrl + Alt + T и выполнить команды соответсвующие вашей версии Ubuntu:
Ubuntu 12.04
Ubuntu 14.04 и 14.10
Ubuntu 15.04
Ubuntu 15.10
Ubuntu 16.04
Переключение видеокарт
С помощью NVIDIA X server Settings
Войдите в менеджер настроек «NVIDIA X server Settings», запустив nvidia-settings через Unity Dash или через терминал.

Далее перейдите в раздел PRIME Profiles и выберите какую видеокарту хотите использовать и нажмите на кнопку «Выход». При смене видеокарты вас попросят ввести пароль администратора.

Для вступления в силу настроек необходимо перезапустить сеанс. Для этого выполните «Завершение сеанса…» и затем заново войдите в систему.

В терминале
Для выбора видеокарты Nvidia используется команда
А для переключения обратно на Intel
Не забываем после смены активной видеокарты перезагрузить текущий сеанс.
Проблемы
sudo apt-get install gtk2-engines-pixbuf:i386
How NVIDIA On-Demand option works in NVIDIA X Server Settings?
I have installed Nvidia proprietary driver on Ubuntu 19.10.
In the Prime Profiles section, there are three options:
* NVIDIA (Performance Mode)
* NVIDIA On-Demand
* Intel (Power Saving Mode)
First and last options are quite obvious, But I don’t know how the second option works. How it detects which application needs NVIDIA driver and which doesn’t?
4 Answers 4
Ok I finally figured it out. As this moment, it appears that NVIDIA can do offload rendering for OpenGL and Vulkan apps.
In order to enable this offload rendering, you have to put the Prime profile on «On-Demand», then for Vulkan offloading you have to put this variable inside your /etc/environment file:
__NV_PRIME_RENDER_OFFLOAD=1
For OpenGL apps, you have to put these variables:
__NV_PRIME_RENDER_OFFLOAD=1
__GLX_VENDOR_LIBRARY_NAME=nvidia
After a restart, it will start render offloading.
In order to check which graphic card is being used, you can enter the following command in terminal:
glxinfo | grep vendor

Chapter 35. PRIME Render Offload
PRIME render offload is the ability to have an X screen rendered by one GPU, but choose certain applications within that X screen to be rendered on a different GPU. This is particularly useful in combination with dynamic power management to leave an NVIDIA GPU powered off, except when it is needed to render select performance-sensitive applications.
The GPU rendering the majority of the X screen is known as the «sink», and the GPU to which certain application rendering is «offloaded» is known as the «source». The render offload source produces content that is presented on the render offload sink. The NVIDIA driver can function as a PRIME render offload source, to offload rendering of GLX+OpenGL or Vulkan, presenting to an X screen driven by the xf86-video-modesetting X driver.
Как опция NVIDIA On-Demand работает в настройках NVIDIA X Server?
Первый и последний варианты довольно очевидны, но я не знаю, как работает второй вариант. Как он определяет, какое приложение нуждается в драйвере NVIDIA, а какое нет?
4 ответа
Глава 35. Разгрузка рендера PRIME
Разгрузка рендеринга PRIME — это возможность визуализировать X-экран одним графическим процессором, но выбрать определенные приложения на этом X-экране для визуализации на другом графическом процессоре. Это особенно полезно в сочетании с динамическим управлением питанием, чтобы оставить графический процессор NVIDIA выключенным, за исключением случаев, когда это необходимо для рендеринга некоторых приложений, чувствительных к производительности.
Графический процессор, визуализирующий большую часть экрана X, известен как «приемник», а графический процессор, на который «выгружается» визуализация определенных приложений, известен как «источник». Источник разгрузки рендеринга создает контент, который представлен в приемнике разгрузки рендеринга. Драйвер NVIDIA может функционировать как источник разгрузки рендеринга PRIME, чтобы разгрузить рендеринг GLX+OpenGL или Vulkan, представляя их на X-экране, управляемом X-драйвером xf86-video-modesetting.
Требования к X-серверу
Поддержка разгрузки рендеринга NVIDIA PRIME требует следующих коммитов git на X-сервере X.Org:
7f962c70 — xsync: добавить ресурс внутри SyncCreate, экспортировать SyncCreate
37a36a6b — GLX: добавить сопоставление поставщика для каждого клиента
8b67ec7c — GLX: используйте отправляющего клиента для поиска XID
56c0a71f — GLX: Добавить функцию для изменения списка поставщиков клиентов
b4231d69 — GLX: Установить GlxServerExports:: <основная, дополнительная>версия
Включение гибридной графики в Ubuntu на ноутбуках Nvidia + Intel (OpenGL, Vulkan)
Это простая инструкция как включить гибридную графику intel-nvidia на ноутбуке. Чтобы определенные приложения запускались на дискретном чипе, а другие на встроенном. На свое удивление в интернете не нашел простую инструкцию того, как запускать определенные приложения, используя дискретную графику. Так что напишу так просто, на сколько считаю нужным
У меня система KDE Neon 5.21 — по большому счету — Ubuntu LTS с окружением рабочего стола KDE Plasma 5.21, видеочип GeForce MX150
1. Устанавливаем драйвер
a) Если у вас система на Qt (Как правило окружение KDE или LXQt), то с помощью данной команды через терминал загрузим программу для установки драйверов:
Если у вас система на GTK то с помощью это команды:
Хотя разницы принципиальной нет
b) Затем запускаем ее с правами root
Можно так же добавить ярлык для запуска в меню приложений
Инструкция для KDE
/.local/share/applications/ создадим файл software properties qt.desktop с таким содержанием
И файл software properties qt.sh в той же папке:
После перезагрузки ярлык появится в меню
Но это далеко не обязательно, вполне достаточно запустить из консоли для наших целей настройки гибридной графики
c) Переходим на последнюю вкладку Additional drivers и устанавливаем нужный драйвер. Я выбрал самой последней версии, который не tested и не server

d) После установки перезагружаем устройство
2. Настраиваем видеокарту
a) Загружаем следующую программу:
b) Переходим в PRIME Profiles Здесь мы видим три пункта:
NVIDIA (Performance Mode) — работать только на дискретной графике. Сильно потребляет батарею в несложных задачах, а так же ноутбук начинает греться. Зато система работает намного быстрее, но это того не стоит. У меня после установки драйвера этот пункт включился автоматически
NVIDIA On-Demand — некоторые приложения будут использовать дискретную графику nvidia, но по-умолчанию встроенная intel. Как запустить конкретное приложение с дискретной графикой напишу дальше
NVIDIA (Power Saving Mode) — отключение дискретной графики
Выбираем второй вариант — NVIDIA On-Demand , и перезагружаем систему

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

Пример: ярлык игры Wolfenstein — Blade of Agony
Можно сделать это же действие через текстовый редактор. Открываем ярлык, находим Exec= , и приписываем перед коммандой данную приставку __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia

__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia minecraft-launcher
Заключение
Данный метод, как я понял, точно работают для программ, использующих библиотеки OpenGL и Vulkan. У меня, к сожалению, не получилось запустить так Windows приложение через Wine, которое использует DirectX, но это уже совсем другая история. (OpenGL приложения под Wine работают)