Компания 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 по подразбиране са включени настройки за овърклокинг (overclocking). Преди това, за да се появят подобни настройки, се изискваше активиране в конфигурационния файл чрез секцията "Coolbits".
- За GPU на базата на Ada и по-нови микроархитектури, за повърхности, създадени чрез API DRM Dumb-Buffers (например при използване на DRM fbdev), режимът на икономия на енергия е деактивиран. Промяната реши проблемите с появата на черен екран при рендериране чрез преден буфер вместо превключване на буферите с помощта на KMS.
- В модула на ядрото nvidia-modeset е добавен параметър ‘conceal_vrr_caps’ за управление на активирането на функциите на някои екрани, като LMB (Ultra Low Motion Blur), несъвместими с VRR (Variable Refresh Rate).
- В файлa /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 modeset=1“ и „nvidia-drm fbdev=1“, при които модулът nvidia-drm (Direct Rendering Manager) ще се използва като заместител на системната конзола на базата на рамковия буфер. Промените решават проблеми с неправилен изход при използване на един екран от драйверите nvidia-drm и simpledrm.
- Реализиран е изключен по подразбиране експериментален режим на обработка на прекъсвания на дисплейния контролер с минимални закъснения. Режимът е полезен за намаляване на забавянията в системи за виртуална реалност при високо натоварване на системата. За активиране в модула 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.
Източник: opennet.ru
