Wayland on NVIDIA: A 12-Month Retrospective — Tracking the Stability Improvements and Remaining Artifacts in My Daily Setup


Introduction

It's been a year since I made the switch to Wayland on my NVIDIA-powered Linux setup. As many know, the journey to full Wayland support on NVIDIA hardware has been a rocky one, marked by frustration, inconsistent performance, and missing features. But things have changed significantly in the past twelve months. In this blog post, I'll reflect on my experience with Wayland on NVIDIA, tracking the progress made, the stability improvements I've observed, and the remaining quirks and artifacts that continue to affect my daily use.

For context, I am using a mid-to-high-end NVIDIA GPU in a Linux environment with a focus on general productivity, light gaming, and development tasks. My setup includes the latest stable distributions of Fedora, Arch Linux, and a few different Wayland compositors such as Sway and GNOME.


A Year of Progress: Stability and Feature Improvements

1. Initial Struggles

When I first attempted to use Wayland on NVIDIA a year ago, the experience was far from smooth. Many compositors would fail to launch, and the few that did resulted in performance issues that rendered the system practically unusable. The fundamental challenge was the lack of proper support for NVIDIA’s proprietary drivers, which were (and still are) essential for optimal GPU performance on Linux.

In the early months, Wayland support on NVIDIA was sparse. The proprietary NVIDIA driver stack did not support the Direct Rendering Infrastructure 3 (DRI3) standard required for smooth Wayland operation. This meant that using Wayland on NVIDIA was often accompanied by graphical glitches, input lag, and other significant issues.

2. The Shift with NVIDIA’s EGL Streams

By mid-2022, NVIDIA began making strides toward improving Wayland compatibility with its introduction of EGLStreams support in its proprietary drivers. EGLStreams allow applications to render directly to the GPU via the EGL API, bypassing the limitations of X11 and making Wayland compositors more functional.

Compositors like GNOME and Sway began to add support for EGLStreams, which marked a turning point for me. Stability started to improve noticeably, with fewer crashes and more reliable rendering of applications. The performance, while still not quite on par with X11, was far better than what I experienced in the early days of using Wayland.

3. System Stability: A Measured Improvement

As the months went on, I observed several key improvements in the stability of my daily setup:

However, while progress has been significant, not all issues were resolved. Several artifacts and issues remain, even after a year of usage.


Lingering Artifacts and Remaining Issues

1. Tearing and V-Sync Issues

Despite the improvements, tearing — the visual artifact that occurs when the display refresh rate doesn't align with the frame rate — remains a persistent issue in some applications and games. This is particularly true for video playback and high-motion content in games. While V-Sync support has improved with Wayland, it's not always reliable across all compositors, and tearing still occasionally occurs when using EGLStreams.

In contrast, on X11, tearing was largely mitigated using simple methods like enabling the “TearFree” option for the NVIDIA driver, but under Wayland, achieving similar results often requires more complex tuning or relies on compositor-specific workarounds that may not work universally.

2. NVIDIA GPU-Specific Artifacts

Using the proprietary NVIDIA driver on Wayland still carries over some unique issues, most notably:

These artifacts are not present when using the open-source Nouveau driver (which is considerably less performant), and it's clear that NVIDIA's proprietary drivers still aren't fully optimized for Wayland in all scenarios.

3. Lack of Full Hardware Acceleration in Some Applications

While hardware-accelerated video playback has improved with Wayland, some applications still struggle to make use of NVIDIA’s GPU, especially those that rely on legacy APIs. For example, when watching videos on certain web-based players (such as YouTube), the GPU utilization is not as efficient as it would be on X11. This results in higher CPU usage and lower overall performance.

Additionally, certain productivity tools, such as CAD software or high-performance video editing apps, still do not work optimally under Wayland on NVIDIA, requiring users to fall back on X11 for those specific tasks.


Improved Workflow: What’s Working Well Now

Despite these persistent issues, there are several aspects of my workflow that have become more stable and reliable over the past year:

1. GNOME on Wayland

GNOME, as one of the most popular desktop environments with native Wayland support, has seen the most consistent improvements. Key areas that work well include:

2. Sway and i3 on Wayland

If you're a fan of tiling window managers, Sway (a Wayland compositor compatible with i3 configs) is now a great option. My experience with Sway has been largely positive, with:


Conclusion: Still a Work in Progress

After twelve months of using Wayland with NVIDIA, the experience has undoubtedly improved. Stability has seen significant gains, and I no longer dread switching to Wayland when booting up my system. However, there are still noticeable artifacts and performance gaps, especially when it comes to tearing, GPU acceleration, and certain legacy application support. The NVIDIA proprietary drivers continue to lag behind in full optimization for Wayland, making it clear that there’s more work to be done.

That said, I remain optimistic. Each month brings more improvements, and the momentum behind Wayland adoption continues to grow. While the journey isn't perfect, Wayland on NVIDIA is certainly becoming more usable for daily computing, and I am excited to see how the ecosystem continues to evolve.

For now, I'll continue to work around the lingering issues and keep an eye on the development of both NVIDIA’s drivers and the Wayland protocol. It’s a thrilling time to be part of this transition, even if it’s still a bit bumpy.