Выпуск проприетарного драйвера NVIDIA 570.124

Компания NVIDIA опубликовала стабильный выпуск новой ветки проприетарного драйвера NVIDIA 570.124. Драйвер доступен для Linux (ARM64, x86_64), FreeBSD (x86_64) и Solaris (x86_64). NVIDIA 570.x стала девятой стабильной веткой после открытия компанией NVIDIA компонентов, работающих на уровне ядра. Исходные тексты модулей ядра nvidia.ko, nvidia-drm.ko (Direct Rendering Manager), nvidia-modeset.ko и nvidia-uvm.ko (Unified Video Memory) из новой ветки NVIDIA, а также используемые в них общие компоненты, не привязанные к операционной системе, размещены на GitHub. Прошивки и используемые в пространстве пользователя библиотеки, такие как стеки CUDA, OpenGL и Vulkan, остаются проприетарными.

Основные изменения:

  • Панель управления nvidia-settings переведена на использование библиотеки NVML вместо NV-CONTROL для управления частотой GPU и скоростью вращения кулера. Переход на NVML позволил обеспечить работу
    nvidia-settings в окружениях на основе протокола Wayland, в которых невозможно использовать X-расширение NV-CONTROL. Некоторые операции, ранее доступные непривилегированным пользователям, теперь будут требовать повышенных привилегий.
  • Добавлена поддержка VRR (Variable Refresh Rate) в многомониторных конфигурациях, в том числе в окружениях с Wayland. VRR даёт возможность адаптивно менять частоту обновления монитора для обеспечения плавности и отсутствия разрывов во время игр и показа видео.
  • Реализована поддержка Vulkan-расширения VK_KHR_incremental_present.
  • Для GPU, поддерживающих программное изменение частоты, в конфигураторе nvidia-settings по умолчанию включены настройки для разгона GPU (overclocking). Ранее для появления подобных настроек требовалась активация в файле конфигурации через секцию “Coolbits”.
  • Для GPU на базе Ada и более новых микроархитектур для поверхностей, созданных через API DRM Dumb-Buffers (например, при использовании DRM fbdev), отключён режим экономии энергии. Изменение решило проблемы с появлением чёрного экрана при отрисовке через буфер вывода на экран (front-buffer) вместо переключения буферов при помощи KMS.
  • В модуль ядра nvidia-modeset добавлен параметр ‘conceal_vrr_caps’ для управления активацией возможностей некоторых экранов, таких как LMB (Ultra Low Motion Blur), несовместимых с VRR (Variable Refresh Rate).
  • В файл /proc/driver/nvidia/gpus/*/power добавлены данные, отражающие состояние использования технологии повышения производительности Dynamic Boost.
  • В бэкенде NVIDIA GBM включён режим совместимости с 32-разрядными приложениями.
  • Добавлен файл /usr/share/nvidia/files.d/sandboxutils-filelist.json со списком всех файлов драйвера, используемых в окружениях на базе изолированных контейнеров, таких как nvidia-container-toolkit и enroot.
  • Добавлена поддержка активации спящего режима suspend-then-hibernate
    через systemd.
  • По умолчанию выставлен параметр “nvidia-drm fbdev=1”, при котором nvidia-drm (Direct Rendering Manager) будет использован в качестве замены системной консоли на базе фреймбуфера. Изменение решает проблемы с некорректным выводом при использовании одного экрана драйверами nvidia-drm и simpledrm.
  • По умолчанию выставлен параметр “nvidia-drm modeset=1”.
  • Реализован отключённый по умолчанию экспериментальный режим обработки прерываний дисплейного контроллера с минимальными задержками. Режим полезен для сокращения подвисаний в системах виртуальной реальности в условиях высокой нагрузки на систему. Для включения в модуле nvidia.ko можно использовать параметр “NVreg_RegistryDwords=RMIntrLockingMode=1”.
  • Обеспечена поддержка сборки с новыми выпусками ядра Linux.
  • Добавлен профиль для повышения производительности игры “Indiana Jones and the Great Circle”.
  • Добавлен профиль для решения проблем с некорректным выводом на экран в играх Assassin’s Creed Valhalla и Assassin’s Creed Mirage.
  • Решены проблемы с производительностью и подвисаниями, проявлявшиеся при прокрутке окон на системах с Wayland в системах с GSP-прошивками.
  • Устранена ошибка, приводившая к аварийному завершению некоторых приложений, использующих графический API Vulkan, при обработке событий изменения размера окна.
  • Устранена ошибка, приводившая к аварийному завершению некоторых многопоточных приложений, использующих OpenGL в окружении на базе Xwayland. Например, проблема проявлялась в игре Civilization 6.
Release. Ссылка here.