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

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

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

  • Обновлены компоненты egl-x11 1.0.3 и egl-wayland 1.1.20.
  • В параметр MetaMode добавлен атрибут “OutputBitsPerComponent”, позволяющий управлять числом бит для каждого компонента цвета, передаваемого через дисплейный порт.
  • Решены проблемы с зависанием и аварийным завершением приложений, использующих графический API Vulkan. Среди прочего, исправлено аварийное завершение приложений GTK 4, использующих бэкенд на базе Vulkan в окружениях Wayland, а также аварийное завершение llama.cpp при использовании Vulkan.
  • Добавлена поддержка Wayland-протокола fifo-v1, реализующего FIFO-механизм (первым пришёл – первым ушёл) обработки очереди обновления содержимого отображаемой поверхности. С практической стороны протокол позволяет при выводе использовать ожидание завершения вертикальной развёртки (vblank) вместо использования callback-вызовов при каждой готовности отобразить новый кадр, что решает проблему с высокой нагрузкой на GPU при использовании VSync.
  • Включён по умолчанию параметр RMIntrLockingMode, активирующий
    режим обработки прерываний дисплейного контроллера с минимальными задержками. Режим полезен для сокращения подвисаний в системах виртуальной реальности в условиях высокой нагрузки на систему.
  • Добавлен экспериментальный режим для сокращения процессорного времени, затрачиваемого на обработку прерываний на экранах с низкими задержками вывода. Для включения в модуле nvidia.ko можно использовать параметр “NVreg_RegistryDwords==RmEnableAggressiveVblank=1”.
  • Решена проблема с отрисовкой пустого экрана при запуске GXL-приложений, использующих одинарную буферизацию, под управлением Xwayland.
  • Устранена ошибка, приводившая после выхода из спящего режима к увеличению потребления памяти в приложениях, использующих X11 OpenGL и Vulkan.
  • Устранено аварийное завершение 32-разрядных приложений на системах с новыми сборами glibc.
Release. Ссылка here.