NVIDIA Releases New Blobs--Too Little Too Late?
Although some companies have embraced the world of free software with open arms, there are many who haven't. NVIDIA is one name that comes to mind. Its reputation in the Linux world is far from stellar, but maybe its recent actions will help mend some bridges.
The biggest problem relates to a "security" feature built in to NVIDIA's GPUs. When third-party firmware is used, the card locks many of its high-end features. This prevents the cards from running at full performance, which is one of the reasons Linux gamers struggle to get the frame rates that Windows users boast about. And in some cases, it causes terrible crashes and weird display artifacts.
Of course, there's always the option of using NVIDIA's official proprietary drivers for Linux, but that means users must install the software and keep it updated manually. NVIDIA's restrictive licenses prevent Linux distro maintainers from distributing it in their repos. And, it should come as no surprise that most Linux users aren't happy being forced to use proprietary software.
Nouveau has been the only real alternative to using NVIDIA's drivers. But NVIDIA's feature-blocking move has forced users to download and install the proprietary firmware blobs alongside Nouveau.
In both cases, the onus is on the user to install the required software, which is a definite obstacle for many. This leads to frustration as new Linux users want their operating system to just work.
So, you can understand why many Linux users and developers think dark thoughts when NVIDIA's name is mentioned. And, as a rule, we're not a community who are known for swallowing our grievances.
Well, there's one thing you can say about complaining--it works!
NVIDIA certainly has heard our cries of outrage, and it recently has made a step in the right direction. This week sees the release of the signed "blobs" for NVIDIA's GeForce GTX 900 "Maxwell" series. The blobs are carefully licensed, so the Noveau developers can bundle them up and distribute them, and that makes life considerably easier for end users.
Of course, I said this was a step in the right direction, and many will point out that it's a small step indeed. The Nouveau team has been waiting 18 months for the firmware, and although it's free to distribute, the source is still closed.
Why does that matter? Well, for one thing, it means we're at the mercy of the official support team. NVIDIA's developers work to fix bugs and improve the performance of its drivers, and the majority of NVIDIA's customers use Windows systems. So, their efforts are focused on improving performance for the Windows environment. In fact, NVIDIA's team is so focused on the Windows platform, it often releases optimizations for a single popular app or game.
Linux is fundamentally different from Windows. Our applications and systems have different requirements. This means we may run into different bugs or need different performance fixes. NVIDIA's teams prioritize the needs of Windows users, because they make up a larger proportion of the customer base. The result is lower performance for Linux users in games and other GPU-intensive apps, and in this case, the fault lies with NVIDIA.
Of course, NVIDIA may feel it's unfair for a minority of users to demand special treatment. And, that would be right--if that was what we wanted.
If NVIDIA's high-end GPUs supported open-source firmware, the Linux community could fix our own issues. This would be a win for NVIDIA too. For one thing, NVIDIA would have fewer angry customers to deal with. It also would be a win for companies like Valve, who are working on Linux-based gaming platforms.
Although NVIDIA's recent actions offer hope for the future, we've still got a long way to go. The only way to get there is to keep demanding better support for free and open-source firmware.
- Smoothwall Express
- Machine Learning Everywhere
- Bash Shell Script: Building a Better March Madness Bracket
- Own Your DNS Data
- Simple Server Hardening
- Understanding OpenStack's Success
- From vs. to + for Microsoft and Linux
- The Weather Outside Is Frightful (Or Is It?)
- Understanding Firewalld in Multi-Zone Configurations
- Returning Values from Bash Functions