显式同步:Wayland迈向终极桌面体验的最后一步

想象一下,如果我说将Wayland与NVIDIA相结合,可以在Linux系统上为您提供有史以来最流畅的体验。想象一下,没有恼人的闪烁、故障、屏幕伪影、滞后或应用程序崩溃。一切都将以光速运行,并尽可能地平滑和愉悦感官。

不,我写这篇文章的时候并没有疯掉。我将要分享的内容,称为
显式同步
,将彻底改变Wayland的形象。它正在从被视为一种更好但不完全存在的显示协议发展成为一种可行的解决方案。这是一个真正的游戏规则改变者。让我告诉你为什么。

Wayland集成显式同步

在一篇引人入胜的博客文章中,KDE开发者Xaver Hugl详细讨论了为什么使用Wayland的人面临问题,尤其是那些使用NVIDIA GPU的人。他还谈到了即将到来的一些令人兴奋的更新。以下是他分享的内容。

在Linux图形领域的一个重大发展中,Wayland最近集成了一个“显式同步”或显式同步功能。

这一更新有望优化应用程序、操作系统和图形硬件之间的交互,有望在各种设备上实现更平滑、更可靠的图形性能。

好吧,听起来很刺激。但我敢打赌,你们中的一些人可能会想,”
究竟什么是显式同步,又有什么大惊小怪的呢?
”“让我解释一下。

解释隐式/显式同步

你有没有想过,为什么在Linux系统上使用AMD或Intel GPU的人似乎比使用NVIDIA的人问题更少?答案很简单——这一切都归结为“隐式缓冲区同步”。AMD和Intel支持这一功能,但NVIDIA不支持。

应用程序中的渲染涉及GPU以自己的速度执行一系列命令,CPU对此进行准备。CPU和GPU之间的这种分工通过允许两者同时处理不同的任务来提高性能。

换句话说,图形API中的同步是隐式管理的(称为隐式同步),这意味着内核或图形驱动程序负责自动处理这些任务的定时,而无需来自应用程序的直接输入。

但是,这种异步操作可能会导致问题。例如,由于图形驱动程序不会直接从应用程序本身获取任何信息,如果应用程序试图在GPU仍在处理图像时读取或修改图像,结果可能是不可预测的——闪烁、故障、崩溃。

这就是显式同步的作用所在——它确保这些操作以正确的顺序进行,从而保持图形输出的完整性。现在,这个新模型已被纳入Wayland,它允许应用程序直接指定渲染何时完成以及哪些任务需要同步,从而改变了游戏。

此外,这种方法可以防止意外同步,并通过减少驱动程序解释命令依赖关系的工作负载来提高性能。

Wayland+NVIDIA:天堂对决

由于之前的同步模型与某些图形驱动程序(尤其是专有的NVIDIA驱动程序)的限制,向显式同步的转变尤其重要。

这些驱动程序中缺乏对隐式同步的支持,导致Wayland出现重大问题,包括闪烁和帧起搏问题。尽管存在变通办法,但它们远非完美,可能会导致崩溃或其他故障。

在Wayland中引入显式同步旨在解决这些问题,提供更稳定和一致的图形体验。这对Wayland上的NVIDIA用户来说尤其重要,因为它解决了使用此显示协议的最重要的剩余障碍。

现在我们进入真正激动人心的部分。定于5月15日发布的NVIDIA 555测试版驱动程序将是第一个支持显式同步功能的驱动程序。

“测试版目前定于5月15日发布。它将包括对EGL应用程序的Wayland显式同步协议和GLX和Vulkan X11应用程序的X11显式同步同步协议的支持。”

换句话说,现在一切都掌握在NVIDIA手中。一旦发生这种情况,将Wayland与NVIDIA显卡一起使用应该是一种流畅而完整的体验。

当然,像Mutter(GNOME)和KWin(KDE Plasma)这样的窗口管理器,以及像Xwayland这样的兼容层,也应该提供支持,允许用户利用显式同步功能。

好消息是,所需的合并请求已经在处理中。它们是——Mutter、KWin和Xwayland。

要旨

未来看起来很光明,显式同步现在是Wayland的一部分,很快将得到Mutter、KWin、Xwayland和NVIDIA驱动程序的支持。这为在各种硬件和软件配置中实现更平滑、更可靠的图形渲染铺平了道路,最终增强了Linux用户的计算体验。

是的,NVIDIA用户将是从中受益的主要用户,因为他们的驱动程序不支持隐式缓冲区同步。显式同步应该可以解决目前使用NVIDIA硬件的大多数问题。

然而,与此同时,其他驱动程序也将受益,因为Vulkan是一款现代图形API,提供对现代GPU的高效访问,使用了相同的显式同步方法。

有一件事是肯定的——接下来的几个月将非常令人兴奋。Wayland,每个人都认为这是一个很好的解决方案,但没有达到预期,可能最终会取得突破。我们得再等几个月,看看它是否会发生。

大鱼的头像

这个人很懒,什么都没有留下~

延伸阅读:

OpenMediaVault 7 NAS获得Kubernetes功能

如果你热衷于自托管NAS并涉足DevOps,你会喜欢这次更新的。OpenMediaVault 7为您推出了一项改变游戏规...

大鱼的头像
大鱼
2024 年 4 月 27 日
QEMU 9.0首次推出先进的ARM和RISC-V功能

QEMU是一个著名的软件工具,允许用户模拟不同的计算机系统,它发布了最新的更新v9.0。它包含了220位作者提交的270...

大鱼的头像
大鱼
2024 年 4 月 27 日
Wine 9.9推出Wow64模式和增强的ARM支持

在之前的9.8发布两周后,以允许Linux和macOS用户运行Windows应用程序而闻名的Wine Project宣布...

大鱼的头像
大鱼
2024 年 5 月 18 日
GNOME 47将于9月18日发布

GNOME坚持严格的六个月发布时间表,通常在3月或4月发布新版本,然后在9月或10月发布。 继3月20日GNOME 46...

大鱼的头像
大鱼
2024 年 5 月 18 日
Winamp以FreeLLama的名义成为开源

我们每天都在这里分享很多新闻,但有些故事激起了一种甜蜜的怀旧感,让我们回到了珍贵的记忆中。Winamp就是这样一个故事。...

大鱼的头像
大鱼
2024 年 5 月 18 日