Состояние поддержки Wayland в драйверах NVIDIA

Аарон Плэттнер (Aaron Plattner), один из ведущих разработчиков проприетарных драйверов NVIDIA, опубликовал сведения о состоянии поддержки протокола Wayland в проходящей тестирование новой ветке драйверов R515, для которой компания NVIDIA предоставила исходные тексты всех компонентов, работающих на уровне ядра. Отмечается, что в ряде областей поддержка протокола Wayland в драйвере NVIDIA пока не достигла паритета с поддержкой X11. При этом отставание связано как проблемами в драйвере NVIDIA, так с общими ограничениями протокола Wayland и композитных серверов на его основе.

Ограничения драйвера:

  • В библиотеке libvdpau, позволяющей задействовать механизмы аппаратного ускорения для пост-обработки, композитинга, отображения и декодирования видео, отсутствует встроенная поддержка Wayland. Библиотека также не может использоваться с Xwayland.
  • Wayland и Xwayland также не поддерживаются в библиотеке NvFBC (NVIDIA FrameBuffer Capture), применяемой для захвата содержимого экрана.

  • Модуль nvidia-drm не выдаёт информацию о возможностях, связанных с переменной частотой обновления экрана, таких как G-Sync, что не позволяет использовать их в окружениях на базе Wayland.

  • В окружениях на базе Wayland не поддерживается вывод на экраны систем виртуальной реальности, таких как платформа SteamVR, из-за отсутствия неработоспособности механизма DRM Lease, позволяющего функционировать в роли контроллера DRM (Direct Renderering Manager), предоставляющего DRM-ресурсы (необходимо для формирования стереокартинки с разными буферами для левого и правого глаза при выводе на шлемы виртуальной реальности).

  • Для Xwayland не реализована поддержка расширения EGL_EXT_platform_x11.

  • В модуле nvidia-drm не поддерживаются свойства GAMMA_LUT, DEGAMMA_LUT, CTM, COLOR_ENCODING и COLOR_RANGE, необходимые для полноценной поддержка цветокоррекции в композитных менеджерах.
  • При использовании Wayland ограничена функциональность утилиты nvidia-settings.

  • С Xwayland в GLX не работает отрисовка буфера вывода на экран (front-buffer) при двойной буферизации.

Ограничения протокола Wayland и композитных серверов:

  • В протоколе Wayland или композитных серверах не поддерживаются такие возможности как стереовывод, SLI, Multi-GPU Mosaic, Frame Lock, Genlock, Swap Groups и расширенные режимы отображения дисплеев (деформация, смешивание, смещение пикселей и эмуляция YUV420). Судя по всему для реализации подобной функциональности потребуется создание новых расширений EGL.
  • Отсутствует общепринятый API, позволяющий композитным серверам Wayland обесточивать видеопамять через PCI-Express Runtime D3 (RTD3).

  • В Xwayland отсутствует механизм, который можно было бы использовать в драйвере NVIDIA для синхронизации отрисовки приложением и вывода на экран. Без подобной синхронизации при некоторых обстоятельствах не исключается появление визуальных искажений.

  • В композитных серверах Wayland отсутствует поддержка мультиплексоров экрана (mux), применяемых на ноутбуках с двумя GPU (интегрированным и дискретным) для прямого соединения дискретного GPU c встроенным или внешним экраном. В X11 экран «mux» может автоматически переключаться между экранами при выполнении полноэкранных приложений c выводом через дискретный GPU.

  • В Xwayland не работает непрямой (indirect) рендеринг через GLX так как реализация архитектуры 2D-акселерации GLAMOR не совместима с реализацией EGL от NVIDIA.
  • В приложениях GLX, выполняемых в окружениях на базе Xwayland, не поддерживаются аппаратные оверлеи (Hardware overlay).



Источник: http://www.opennet.ru/opennews/art.shtml? num=57194

Полный текст статьи читайте на OpenNet