The holdup has always been NVidia and only NVidia. Roughly 10 or so years ago at some Linux conference (either XDC or Linux Plumbers) all stakeholders were invited to discuss the path for Wayland. Everybody except Nvidia decided to show up (Nvidia wanted to wait and see) and given that attending AMD and Intel already developed their drivers within the regular technology stack, they all agreed that GBM was the easiest way forward. Years (!) later Nvidia decided to act as if they were the champions of open standards and dig up EGLStreams and tried to convince everybody to port their years of work over. Eventually Nvidia realized that porting their driver to support GBM was saner but that took forever.
It’s a shame that history has repeated itself with Implicit sync (AMD/Intel) vs Explicit Sync (Nvidia) - except this time Nvidia is still not going to go for Implicit sync (apparently due to the “unified architecture” of their driver, this would mean switching Windows over to implicit sync as well) so they’re trying to get support for explicit syncing added into most of the compositors/XWayland.
That one flaw is what finally got me to pickup an AMD card this month. Due to the fact that Nvidia is the odd one out, the result is that when using apps through XWayland, you end up with random spots of the application displaying previous frames making it unusable for my case. Talk about a night and day difference that has been.
Sure, but unfortunately from a user-perspective side of things what this meant is that for me XWayland (and thus, Wayland as a whole) has been broken for quite a while just because I happened to use an Nvidia card.
I’ve mentioned in a previous comment a few weeks ago, I do commend the couple of devs (that Nvidia has so graciously allowed to work on the OSS side of things) work into wiring up support for explicit synchronization and getting support added in upstream - but its been very saddening from my point-of-view to watch the discussion over at the related issue constantly go from “Well Nvidia just needs to support implicit sync” to “Well we can’t, but what can we do to get things to work with explicit sync since we do support that” and back and forth on that for a year.
All of this of course, while the community is trying to drop X11 as fast as they possibly can now. If it were just a case of not being able to use Wayland for a bit longer, I would’ve still been a bit upset by it, but I could’ve lived with it. Unfortunately, X11 + Nvidia also doesn’t work that great in my case. I have two 1080p displays that only run at 60Hz, and I could hardly get the desktop itself to run at a stable 60FPS without it constantly dropping frames from just having a web browser open which should not be difficult at all for an RTX 2080. I tried every single tweak on both the Nvidia X-settings side of things, various compositor options for KWin, Mutter, etc - nothing helped. The closest I got was using KDE’s X11 session, disabling compositing from KWin and replacing it with picom… but even that wasn’t great, and came with a whole handful of problems too.
Then surprise surprise, I finally get my AMD card (RX 6700XT so pretty much a lateral move), same monitors - X11 runs just fine for the few occasions where I can’t use Wayland, and at the same time Wayland runs beautifully.
I mean, Nvidia has absolutely no interest in Wayland. Any effort they put into supporting it will net them zero benefits. The fact they changed their initial stance and are supporting it at all is actually surprising.
My guess would be that Wayland has finally got to a place where said effort is finally small enough for Nvidia to make with minimal investment – like, one or two developers working on it part time.
Well they do lose some business in the Linux world to their issues and will probably take some time to recover their reputation in the Linux desktop community. I know not everyone hates them and the Linux Desktop community isn’t huge right now, but there is some incentive to show the world you care about your customers
And if Linux Desktop ever gets super popular and easy for everyone but Nvidia, that’s not a necessary risk Nvidia should take. And the catching up later on could be really slow and painful if Nvidia lets themselves get even further behind. GPUs are among the most complicated hardware components to support and develop drivers and other software for.
Agreed. But it seems like since around two years ago Nvidia finally got the memo that Wayland will happen with GBM, and not EGLStreams. So with the recent changelogs fixing many issues I’m optimistic about Wayland on Nvidia.
I agree desktop is not top priority. And I know their money largely comes outside Desktop. In fact, I would be surprised if consumer products came close to their b2b products.
Just saying they have more than zero incentive to care about the Linux desktop. And apparently, Nvidia agrees, because they are finally putting more effort in.
I still use and recommend AMD for Linux desktop, and I’m hoping Intel will become competitive in that space so we have more options and competition. I personally don’t like how closed off, uninvolved, and impassive Nvidia has been in general and I don’t trust them in general to collaborate much, as shown by their history.
Sometimes I wonder what the big hold-up was. I remember NVIDIA wanted one type of renderer while the rest working on Wayland went the other way.
The holdup has always been NVidia and only NVidia. Roughly 10 or so years ago at some Linux conference (either XDC or Linux Plumbers) all stakeholders were invited to discuss the path for Wayland. Everybody except Nvidia decided to show up (Nvidia wanted to wait and see) and given that attending AMD and Intel already developed their drivers within the regular technology stack, they all agreed that GBM was the easiest way forward. Years (!) later Nvidia decided to act as if they were the champions of open standards and dig up EGLStreams and tried to convince everybody to port their years of work over. Eventually Nvidia realized that porting their driver to support GBM was saner but that took forever.
It’s a shame that history has repeated itself with Implicit sync (AMD/Intel) vs Explicit Sync (Nvidia) - except this time Nvidia is still not going to go for Implicit sync (apparently due to the “unified architecture” of their driver, this would mean switching Windows over to implicit sync as well) so they’re trying to get support for explicit syncing added into most of the compositors/XWayland.
That one flaw is what finally got me to pickup an AMD card this month. Due to the fact that Nvidia is the odd one out, the result is that when using apps through XWayland, you end up with random spots of the application displaying previous frames making it unusable for my case. Talk about a night and day difference that has been.
From what I understand, Nvidia may be right in this case and explicit sync seems to be the better approach.
There is a nice article on Collabora’s blog about it and it sounds plausible to me: https://www.collabora.com/news-and-blog/blog/2022/06/09/bridging-the-synchronization-gap-on-linux/
Sure, but unfortunately from a user-perspective side of things what this meant is that for me XWayland (and thus, Wayland as a whole) has been broken for quite a while just because I happened to use an Nvidia card.
I’ve mentioned in a previous comment a few weeks ago, I do commend the couple of devs (that Nvidia has so graciously allowed to work on the OSS side of things) work into wiring up support for explicit synchronization and getting support added in upstream - but its been very saddening from my point-of-view to watch the discussion over at the related issue constantly go from “Well Nvidia just needs to support implicit sync” to “Well we can’t, but what can we do to get things to work with explicit sync since we do support that” and back and forth on that for a year.
All of this of course, while the community is trying to drop X11 as fast as they possibly can now. If it were just a case of not being able to use Wayland for a bit longer, I would’ve still been a bit upset by it, but I could’ve lived with it. Unfortunately, X11 + Nvidia also doesn’t work that great in my case. I have two 1080p displays that only run at 60Hz, and I could hardly get the desktop itself to run at a stable 60FPS without it constantly dropping frames from just having a web browser open which should not be difficult at all for an RTX 2080. I tried every single tweak on both the Nvidia X-settings side of things, various compositor options for KWin, Mutter, etc - nothing helped. The closest I got was using KDE’s X11 session, disabling compositing from KWin and replacing it with picom… but even that wasn’t great, and came with a whole handful of problems too.
Then surprise surprise, I finally get my AMD card (RX 6700XT so pretty much a lateral move), same monitors - X11 runs just fine for the few occasions where I can’t use Wayland, and at the same time Wayland runs beautifully.
I mean, Nvidia has absolutely no interest in Wayland. Any effort they put into supporting it will net them zero benefits. The fact they changed their initial stance and are supporting it at all is actually surprising.
My guess would be that Wayland has finally got to a place where said effort is finally small enough for Nvidia to make with minimal investment – like, one or two developers working on it part time.
Which means OP shouldn’t hold their breath.
Well they do lose some business in the Linux world to their issues and will probably take some time to recover their reputation in the Linux desktop community. I know not everyone hates them and the Linux Desktop community isn’t huge right now, but there is some incentive to show the world you care about your customers
And if Linux Desktop ever gets super popular and easy for everyone but Nvidia, that’s not a necessary risk Nvidia should take. And the catching up later on could be really slow and painful if Nvidia lets themselves get even further behind. GPUs are among the most complicated hardware components to support and develop drivers and other software for.
The Linux systems where Nvidia makes money don’t use Wayland.
As for desktop Linux… I have a feeling it might not be at the top of their priorities right now. To put it delicately.
Agreed. But it seems like since around two years ago Nvidia finally got the memo that Wayland will happen with GBM, and not EGLStreams. So with the recent changelogs fixing many issues I’m optimistic about Wayland on Nvidia.
I agree desktop is not top priority. And I know their money largely comes outside Desktop. In fact, I would be surprised if consumer products came close to their b2b products. Just saying they have more than zero incentive to care about the Linux desktop. And apparently, Nvidia agrees, because they are finally putting more effort in.
I still use and recommend AMD for Linux desktop, and I’m hoping Intel will become competitive in that space so we have more options and competition. I personally don’t like how closed off, uninvolved, and impassive Nvidia has been in general and I don’t trust them in general to collaborate much, as shown by their history.
FWIW NVIDIA Q1 2023 Sankey from Motley Fool https://eu.usatoday.com/story/money/2023/05/30/nvidia-shares-stock-prices-soar/70264847007/ shows data center being 2x gaming.
That sounds about right