upvote
Yeah, Nvidia cares a lot if you are using compute (aka CUDA). If you are using their pure compute offerings, they are really top of the line on performance and tooling.
reply
Though only with commercial distros. If you're using a fixed version of RedHat, SUSE or Ubuntu (which Canonical offers a commercial version), you're fine. Just hope that their support is long enough and NEVER EVER change kernel versions except patches!

If your GPU is older than 5 years, then you're in danger zone and you should have completely replaced your hardware 3 years ago and bought new Nvidia equipment now 10x more expensive!

reply
Terms which famously caused Linus Torvalds to tell them to FU.
reply
With fairness; some things have changed.

The biggest issue was Nvidia's insistence on buffer management with EGLStreams instead of GBM, which broke a lot of desktops. But they forfeit that fight ~4 years ago.

reply
EGLStreams actually was(is) a pretty good API, and I think most compositors would've had a much better time if they decided to implement that on top of GBM.

To summarize the difference between the two, with EGLStreams, you just request a buffer to draw into from a pool, then once you're done, you just submit it, thereby relinquishing control of it.

With GBM, you explicitly need to manage the lifetime and access of your buffers, making sure you don't leak or accidentally write it when the GPU/driver tries to, there's no clear ownership, and you have to handle surfaces for double/triple buffering.

It's a much lower level API, and much harder for drivers and app developers to get right, which was no doubt responsible for many years of buggy Wayland compositors - in fact, basically there wasn't a single correct implementation until Valve built Gamescope/their wlroots-based KWin fork and did a bunch of driver work.

reply