top | item 14817671

“We currently have no plans to support Xwayland”

181 points| ollien | 8 years ago |devtalk.nvidia.com | reply

307 comments

order
[+] posguy|8 years ago|reply
For a company that is wholly reliant on Linux to sell quite a few of their products, the lack of support from Nvidia continues to be impressive.

Intel is actively trying to kill off lowend and mid-range GPUs in the desktop, and has locked them out in the mobile space, leaving Nvidia with just the high end GPU market and their ventures into the ARM SOC space.

By not treating Linux end user devices as first class citizens, I don't see how Nvidia intends to have a viable business long term. Who wants a tablet, phone or desktop GPU without drivers?

[+] cthalupa|8 years ago|reply
A company that is wholly reliant on Linux to sell quite a few of their products?

Gaming enthusiasts aren't running Linux. The HPC/GPU compute market don't care about Wayland. Android devices aren't using Wayland.

What part of their target market runs Linux?

What portion of the desktop market runs Linux?

If it wasn't for Linux, I'd be in a very different profession, so I'm a huge fan. But I don't understand where you guys that act like the Linux desktop is a big enough market that this will make a material affect on nvidia's bottom line is so weird to me.

[+] binarycrusader|8 years ago|reply
The reality is all the money they make off Linux is with workstations cards or HPC. Neither of those market niches are likely demanding Wayland support since stability is a hard requirement and Wayland really isn't sufficiently mature yet (nor does it really have sufficient market adoption).

They're a business, so when their customers need it, they'll support it. Until then, only hobbyists or an insufficient part of their customer base is interested, so understandably, they're not investing in it.

[+] phkahler|8 years ago|reply
Hold on. They didn't say they won't support Wayland - they will. They said they won't support Xwayland which is needed to run X programs under Wayland. I don't think that's entirely unreasonable. The community has said Wayland is the future, and they are finally on board with that. But now the community is dragging their feet in actually getting there. We still don't have upstream Firefox running natively on Wayland. Gimp, Inkscape, others, they have it on the radar but have been putting it off for years now. The only thing nVidia is doing here is not allowing the free software world to lag behind in their own goals ;-)
[+] coldtea|8 years ago|reply
>By not treating Linux end user devices as first class citizens, I don't see how Nvidia intends to have a viable business long term. Who wants a tablet, phone or desktop GPU without drivers?

The more relevant question is "who wants a desktop Linux system". And the answer is very few.

That's why they doesn't care about that market. The huge majority of desktop users will go either Windows or OS X.

[+] foobarian|8 years ago|reply
It's because their real market are GPU servers which don't run any UI whatsoever.
[+] Zahlmeister|8 years ago|reply
>> By not treating Linux end user devices as first class citizens, I don't see how Nvidia intends to have a viable business long term. Who wants a tablet, phone or desktop GPU without drivers?

Desktop Linux with Wayland has maybe 0.1% market share rising to maybe 1% over the next years in the best case. In the worst case, Wayland will just be another Linux Desktop fail. Other devices (Phone/Tablets) do not use Wayland.

The amount of resources any given company can allocate to Linux platform bullshit is limited. The "serious" NVIDIA Linux customers will probably stick with X anyway, in the foreseeable future.

[+] pfooti|8 years ago|reply
this isn't "no plans to support wayland" - these drivers are built to support wayland. It's the Xwayland translation layer they're talking about here, which (I think - my understanding is a bit thin here) is for running applications that are compiled to use X11 graphics in a wayland environment.

So: it could well be that this is an issue of resource allocation more than anything else. Over time, most applications should move to using wayland (or whatever window / surface library emerges as the clear winner, but that looks like wayland is the future here) for their graphics. A lot of effort into supporting Xwayland would mean work spent on a library that should be of limited utility - only useful during the transition between platforms (like the old carbon layer for OSX in the early 10.0, 10.1 days). Right? Or maybe I'm misreading it.

[+] ollien|8 years ago|reply
From what I read on reddit, Xwayland is X running within wayland, and (for some reason) needs some special code in the drivers. I'm not fully clear as to why or what needs to change.
[+] hyperion2010|8 years ago|reply
I've been following the X11 vs Wayland story since very close to the beginning and have built and used wayland and weston multiple times over the years. Cutting through all the FUD on both sides, my conclusion is that Wayland was created in the context of some very specific use cases which essentially preclude it from being a general solution that can replace X by itself (it could succeed if there was a single project to reimplement X in a sane way, but leaving it to GKT and QT is NOT a solution by any stretch of the imagination). Nvidia's engagement with linux simply does not cover the use cases that Wayland was created to address. In my view desktop/workstation use cases are not sufficiently covered by Wayland, and that is where nvidia's focus has been.

tl;dr Nvidia has no need to play in this space, anyone using X will just use X without the translation layer.

[+] madez|8 years ago|reply
While your post is interesting, it is also vague. Can you specify what Wayland is missing that can't be adequately handled by QT or GTK, or do you just have the feeling there is such a thing?
[+] microcolonel|8 years ago|reply
> (it could succeed if there was a single project to reimplement X in a sane way, but leaving it to GKT and QT is NOT a solution by any stretch of the imagination).

Qt and GTK are not responsible for implementing the compositor at all. Compositors aren't actually the problem at all, the problem is applications.

XWayland is one of the main ways we are going to bring legacy applications to Wayland desktops. It works about as well as X does, and lets the other applications take advantage of the sane architecture of Wayland.

> In my view desktop/workstation use cases are not sufficiently covered by Wayland, and that is where nvidia's focus has been.

What use cases? The only thing that's missing for me is input method integration. It has full display colour management, handles multiple refresh rates in the same session well, handles scaling, supports every input device I own (including graphics tablets). What's not really firm right now is native support in every application, that's coming along at some rate, and XWayland is bridging that gap quite well.

[+] ryanmarsh|8 years ago|reply
tl;dr it's 2017 and video is still a wasteland on Linux
[+] seiferteric|8 years ago|reply
Why is support from nvidia even needed? I remember that there was always this weird thing where graphics drivers were written for X11 instead of being part of the kernel (or a module) like all other drivers, is this still the case? Why can't they write a kernel (framebuffer?) driver so no specific support is needed for a desktop environment?
[+] problems|8 years ago|reply
Indeed they can, For basic framebuffer, but for doing 3d acceleration, to get many nice desktop effects people are used to you basically have to speak their proprietary protocol to the GPU. You can do a little better than framebuffer, like the "nv" Xorg driver, but it's still not really sufficient for composting, video playback and other things commonly expected from a desktop OS.

There's an effort to reverse engineer this called nouveau, they've done a surprisingly good job in a surprisingly short time, but it's still far from perfect.

[+] peterwwillis|8 years ago|reply
Why do you need the NVidia proprietary driver? http://www.pcworld.com/article/2911459/why-nvidia-graphics-c...

Basically, if you're not a gamer, the open-source Nouveau driver should provide all you need, assuming it works for your card. But parts of your system may stop working, or cause other bugs, from not using the official drivers.

edit

I might have misinterpreted your question, so here's an alternate answer. If you mean "Why can't we just do 3D rendering with a framebuffer?", a framebuffer is just a copy of the rendered screen in memory. You render it in your local CPU, and then copy it over into video card memory. So it doesn't use hardware rendering, and can work with pretty much any card.

If you do want to do hardware rendering (or most any feature of your card at all) you have to write a kernel driver (the DRM) to use the chip, and then some userland software (the DRI) to manipulate that driver, and send data to it somehow from your client app using a standard API for 3d graphics (OpenGL's GLX extension for the X11 protocol). The devil is in the details though, so to work around some limitations, some people wrote new graphics software to allow the client app to render without a "middle man" in the way. That's where you get Wayland.

[+] shmerl|8 years ago|reply
That's just too bad, especially for those who use Wine (Wine on Wayland now looks completely stalled, and XWayland would be the only way to use it in the foreseeable future). Firefox is also far from ready.

But Mesa really caught up lately, so switching to AMD was never as good. Just forget Nvidia and enjoy properly integrated graphics stack.

[+] reikonomusha|8 years ago|reply
Note that this is not equivalent to saying "we plan to not/we will not support Xwayland." It just means it's not currently in the pipeline (and may or may not be in the future).
[+] dpark|8 years ago|reply
There's no meaningful difference between these. Not planning support is equivalent to planning no support.
[+] paulddraper|8 years ago|reply
Exactly. 95% of Linux users use X11 and 1% use Xwayland.

Reverse those numbers and you'll hear a different story.

[+] gigatexal|8 years ago|reply
Is AMD supporting xwayland? If so I’ll just buy their stuff and call it a day.
[+] floatboth|8 years ago|reply
amdgpu is an open source driver, the userspace part is in Mesa, so it should support xwayland all the things
[+] dragonne|8 years ago|reply
I guess I have no plans to buy another Nvidia card, then. Their current X11 drivers tear like crazy, and I have hope that Wayland will fix that.
[+] ekianjo|8 years ago|reply
> Their current X11 drivers tear like crazy, and I have hope that Wayland will fix that.

No they don't. I have had 3 different nVIdia configs, and presently 2 for gaming, and through my experience hopping from one distro to the next I find that the problem is actually unrelated to nVIdia drivers - but the compositor. For example, in Mint if you switch to compton, it makes all tearing disappear. This is well documented.

[+] simias|8 years ago|reply
I tried to do that, unfortunately for the high end AMD is simply not competitive. If you want to game in 4K NVidia is the way to go (or at least it was 6 months ago when I bought my card).
[+] lottin|8 years ago|reply
Buy only from companies that support FOSS, e.g. AMD and Intel.
[+] Iv|8 years ago|reply
Yeah well I doubt they keep that stance for very long. Nvidia is investing like crazy in keeping the deep learning community happy about their products and they are disproportionately on Linux.

If/when Wayland becomes the default for Ubuntu, Nvidia will follow. Can't let them ponder the amount of time it would take to code the missing layers for AMD hardware

[+] padraic7a|8 years ago|reply
At one stage Ubuntu seemed to be definitely planning a move to Wayland. Because of it's performance however they may be pulling back from that: http://www.omgubuntu.co.uk/2017/07/ubuntu-uncertain-using-wa...

As a Fedora user I can understand the reluctance. The recent upgrade to Fedora 26 has given me a ton of gnome crashes which I think are Wayland related. Commentary on Fedora channels tends to be along the lines of "Wayland is great and works for everyone (OK, maybe not those with NVidia cards)".

If Ubuntu has millions of users it may have millions of NVidia users. Putting them onto unstable technology to pressure Nvidia into supporting Wayland wouldn't be a great move.

[+] ekianjo|8 years ago|reply
> If/when Wayland becomes the default for Ubuntu

Ubuntu is the default distro for gaming, too, and I doubt they will jump until it's well ready, and certainly NOT before nVIdia provides support. It would make no sense.

[+] saghm|8 years ago|reply
Wayland is the default for Gnome now, and Ubuntu is switching to Gnome for its desktop next year. Have they said anything about whether they plan to change the default from Wayland to X for their installations?
[+] mkj|8 years ago|reply
A bit off topic, but do the people using deep learning GPUs use the same device for desktop graphics? There aren't problems with display lockups etc?
[+] userbinator|8 years ago|reply
Perhaps Linus needs to give them another middle finger.
[+] sunnyps|8 years ago|reply
From what I gather, it's about GLX support in Xwayland. Most general purpose applications won't be affected* but games would be.

* The big exception is Chrome which uses GLX for accelerated rendering. The software fallback path uses a lot more CPU and won't support WebGL AFAIK.

[+] sleavey|8 years ago|reply
What's the best supported graphics card line on Linux now and in the near future, anyway? I recently tried to search and it was difficult to get good information.
[+] microcolonel|8 years ago|reply
Any of AMD's recent discrete graphics cards are very well supported. Both the proprietary blob driver and the Mesa-based free driver share an upstream kernel module. The Mesa-based driver tends to have better performance for most applications, but currently lacks some of the bleeding-edge display technologies from the proprietary driver. That is likely to be completely rectified in the next couple of kernel release cycles.

They continue to expand their team, and there is a certain amount of broader community involvement in the Mesa-based driver. Valve software has at least one full time developer working on the driver in addition to the full time developers working directly for AMD on it.

The peak performance of AMD's top (pre-vega) cards right now is less than the peak performance of NVIDIA's top cards, but for similarly priced cards, the performance is basically on par. Finishing out 2017, and starting 2018, I think AMD may reach or exceed NVIDIA in flagship performance.

[+] shmerl|8 years ago|reply
Get Polaris cards, like AMD RX 480 / 580. Vega is upcoming, but so far didn't gain proper kernel support (DC wasn't merged yet).

Sapphire is one of the best card makers with AMD chips: http://sapphirenitro.sapphiretech.com/en/580-8.html

The only problem - lately they are hard to buy. I guess all those bitcoin miners buy all of them at once.

[+] mgbmtl|8 years ago|reply
What do you need it for? If it's not for gaming or intense 3D requirements, I have been using Intel for a long time, and quite happy (lower cost & reliable).

I do play some games, but it's on a 3 year old desktop which is also running 4 fairly busy VMs (i7-4770 CPU @ 3.40GHz with 32 GB RAM and the built-in Intel graphics card).

[+] KaiserPro|8 years ago|reply
Define supported.

Nvidia supports X11, on Centos/fedora. ITs first class support and the driver is as fast as windows (or faster)

[+] noir_lord|8 years ago|reply
I put an RX460 in the new work desktop and it's been flawless, always has been right back to my ancient 6950.

Laptops and media PC are all Intel and they are reliable as well.

Will depend on your use case though.

[+] ajdlinux|8 years ago|reply
Wow, that's seriously disappointing.

As of recently, I have a mixed 1920x1200 and 4K setup on my home desktop, and 1920x1200 + 2560x1440 setup on my work laptop. I was very interested in what I'd heard about Wayland supporting per-monitor scaling and hoping to move over whenever KDE's Wayland support stabilised.

Well, I guess I'll still be doing that on my work laptop with its Intel graphics... here's hoping AMD does better for my next desktop GPU upgrade.

[+] samtoday|8 years ago|reply
You'd be surprised by how many apps support Wayland natively. Gtk+ and QT support it transparently for app developers, and I assume other frameworks do as well.

And Wayland is a huge improvement over X. Whenever I go back to X, it really suffers from tearing on portrait sub-1080p DIV-D monitor.

[+] thrillgore|8 years ago|reply
I've consistently had issues with Vulkan on the 960M my laptop has. Nvidia sure makes it easy for me to go back to AMD.

The graphics market is dangerously locked up by two players and its time some new players took the capital risk and stepped in. Nvidia would probably give a shit if someone bothered to challenge their share of the market in both graphics and computational space.

[+] sp332|8 years ago|reply
The patent situation is a huge barrier to entry.
[+] microcolonel|8 years ago|reply
I currently have no plans to buy an NVIDIA card ever again for display; and if AMD does well enough, probably not for compute either. They've been consistently useless in supporting the platforms I want to use for work and play, and while they've gotten a shade better over the last decade, not as better as their competition in the discrete GPU market.
[+] TheSpecialist|8 years ago|reply
Good luck using Wine with Wayland on Nvidia driver.

I'm really glad I ditched Nvidia and switched to AMD. With Mesa progressing at fast pace, Nvidia will become simply inferior in many aspects, including the above one.

[+] BusinessInsider|8 years ago|reply
The best thing Linux users can do: Buy and recommend AMD and Intel hardware. Both are working well with open source drivers built into the kernel.
[+] kronos29296|8 years ago|reply
This really sucks considering that nvidia drivers have better perf than nouveau. Well can't help it, only nouveau till nvidia releases new ones.
[+] robert_foss|8 years ago|reply
nVidia is crippling the Nouveau drivers by not releasing the signed blobs required for basic things as fan control and setting the clockspeed.