Nvidia переходит на модули ядра графического процессора с открытым исходным кодом

В мае 2022 года Nvidia выпустила набор модулей ядра графического процессора Linux с драйвером R515 с открытым исходным кодом и двойной лицензией GPL и MIT. Первоначальный выпуск был ориентирован на вычислительные графические процессоры центров обработки данных, а теперь внедряется полнофункциональная поддержка GeForce и Workstation Linux. Модули Open Kernel в конечном итоге заменят драйвер с закрытым исходным кодом.

Графические процессоры компании имеют общую архитектуру драйверов и набор возможностей. Два года в Nvidia добивались эквивалентной или более высокой производительности приложений с помощью модулей ядра графического процессора с открытым исходным кодом и смогли добавить новые возможности:

  • поддержку управления гетерогенной памятью (HMM);

  • конфиденциальные вычисления;

  • согласованную архитектуру памяти платформ Grace.

В настоящее время происходит полный переход на модули ядра графического процессора с открытым исходным кодом, а изменение внедрят в предстоящем выпуске драйвера R560.

Для передовых платформ, таких как Grace Hopper или Blackwell, необходимо использовать модули ядра графического процессора с открытым исходным кодом. Проприетарные драйверы на них не поддерживаются. Для новых графических процессоров архитектур Turing, Ampere, Ada Lovelace или Hopper NVIDIA также рекомендуется перейти на модули ядра графического процессора с открытым исходным кодом. Однако в случае с более старыми GPU архитектур Maxwell, Pascal или Volta придётся продолжать использовать проприетарный драйвер. В смешанных системах со старыми и новыми графическими процессорами потребуется собственный драйвер.

Nvidia предоставляет новый вспомогательный сценарий обнаружения, который поможет выбрать драйвер.

Как правило, версия драйвера по умолчанию, устанавливаемая всеми способами установки, переключается с проприетарного драйвера на открытый. Есть несколько конкретных сценариев, которые заслуживают особого внимания:

В выпуске драйверов Nvidia 560 для обычных GPU начиная с Turing, и при виртуализации GPU, начиная с Ada, по умолчанию начнут устанавливаться открытые варианты модулей ядра nvidia.ko, nvidia-modeset.ko, nvidia-uvm.ko, nvidia-drm.ko и nvidia-peermem.ko. В дистрибутивах Ubuntu, Debian, SUSE и openSUSE для установки варианта драйверов на базе открытых модулей рекомендуется использовать пакет "nvidia-open", а в дистрибутивах на базе RHEL - модуль "nvidia-driver:open-dkms".

Если требуется установить проприетарные модули ядра, нужно указать опцию "--kernel-module-type=proprietary" при запуске run-архива с драйверами, либо изменить параметры по умолчанию в интерфейсе установщика. Кроме того, отдельно доступен пакет nvidia-driver-assistant, упрощающий выбор оптимального варианта модулей ядра.

Материал опубликован при поддержке сайта habr.com
Комментарии

    Актуальные новости по теме "Array"