Aaron Plattner, one of the leading developers of NVIDIA's proprietary drivers, evaluated the state of Wayland support in NVIDIA's proprietary drivers and listed areas where Wayland-related capabilities currently lag behind X11. The information corresponds to NVIDIA driver branch 565, which is in the beta testing stage. The lag is due to problems in the NVIDIA driver itself as well as the general limitations of the Wayland protocol and its underlying compositing servers.
Capabilities that are not yet planned to be supported in NVIDIA drivers on Wayland systems due to limitations of the Wayland protocol and compositors. servers.
- Stereo output (creating a stereo image with different buffers for the left and right eye) using GLX, EGL, and Vulkan.
- SLI Mosaic mode, which allows combining multiple GPUs into one logical GPU to create a large virtual screen composed of multiple displays.
- The nvidia-settings configurator does not allow achieving an identical level of settings across different compositing managers because there is no unified screen configuration mechanism on Wayland systems.
Some features cannot be implemented due to the inability to provide uniform support across different compositing. servers Wayland. However, these capabilities can be implemented in applications using the Vulkan graphics API and the Vulkan extension VK_KHR_display ('Vulkan Direct to Display'), which allows direct screen access, bypassing the compositing server. Through Vulkan, functionalities such as stereo output (VK_KHR_multiview with rendering to multiple viewports), Vulkan Explicit SLI mode (via VK_KHR_device_group), framebuffer groups (Swap Group, via VK_NV_present_barrier), frame locking (Frame Lock), and general locking (Genlock) can be supported.
Capabilities that are already in development or planned for future releases of NVIDIA drivers:
- Use of VRR (Variable Refresh Rate) in multi-monitor configurations in Wayland environments. This will be included in the next release of NVIDIA drivers.
- Setting the parameter 'nvidia-drm fbdev=1' by default, which will resolve issues with incorrect output when using a single screen with NVIDIA-drm and simpledrm drivers.
- Setting the parameter 'nvidia-drm modeset=1' by default.
- Support for using the Wayland display multiplexer (mux) for automatic switching when a fullscreen application outputs via a discrete GPU. Display multiplexers are used in laptops with two GPUs (integrated and discrete) for direct connection of the discrete GPU to the built-in or external display.
- Extended display modes such as deformation, blending, pixel offset, and COLOR_ENCODING/COLOR_RANGE properties.
- Ability to use Xwayland's front-buffer output with double buffering.
- Support in nvidia-drm (Direct Rendering Manager) for the Presentation Timing mechanism to synchronize frame output to the screen.
- Support for the VDPAU (Video Decode and Presentation) API to leverage hardware acceleration for video processing in various formats in Wayland-based environments, delegating tasks such as post-processing, compositing, display, and video decoding to the GPU.
- Support in Wayland-based systems for vGPU technology, allowing the use of NVIDIA virtual GPUs in virtualization systems to share resources of a physical NVIDIA GPU.
Among the recently implemented features is the egl-x11 library, enhancing EGL API support in the Xwayland DDX server, which is used to launch X11 applications in Wayland-based environments.
Source: opennet.ru
