For Ubuntu 19.10 the developers are adding the NVIDIA driver packages onto the ISO. The NVIDIA binary drivers won’t be activated by default, but will be present on the install media to make it easier to enable post-install.
The open source Nouveau driver will remain the default, but this will make it easier to opt for NVIDIA’s proprietary driver. NVIDIA has given permission for this inclusion.
https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-390/+bug/1826844
My entire linux OS (kernel + userland) is about 60MB (compressed squashfs). Granted it’s not a desktop OS, but still >100MB is a very high opportunity cost just to bundle proprietary nvidia drivers. What the heck is in there anyways? 1 million bytes of logic is huge, 100MB+ is an insane amount of code for a driver. Yeah I know, 2005 called and told me not to worry ’bout it, gigabytes are the new megabytes…but I still harbor old-school opinions about code efficiency and it astonishes me how inefficient we’ve become!
Since I’m doing some GPGPU development, I might end up needing nvidia’s drivers in my OS. I wonder if nvidia’s permission extends to other distros? The link doesn’t give any details whatsoever.
This is only meant for livecd usage to demo with nvidia drivers. When you install the distro it can download the nvidia drivers so no permission from nvidia is needed.
With regard to huge driver packages: I hope some day AI can automate this optimize process. Or maybe a system that can download only what your system needs.
Fergy,
Obviously if your talking about ubuntu, it’s not a problem because nvidia makes official driver packages for it that can be installed post installation, but that doesn’t necessarily work with 3rd party distros. If nvidia doesn’t support a 3rd party indy os (because it doesn’t have critical mass) and prohibits 3rd party modification, then that poses a problem for 3rd party distros. Changes may be necessary that fall afoul of nvidia’s license agreements.
https://www.geforce.com/drivers/license/geforce
Damn, I hadn’t even been aware of the last term before now. I wonder what motivated them to add it. That means people using nvidia drivers on servers could technically be argued to be in violation of nvidia’s license. That sucks!
I can definitely believe that the NVidia unified driver contains that much logic. Graphics drivers are extraordinarily complex.
FlyingJester,
That’s an enormous amount of code and graphics really aren’t that complex.
Povray is a sophisticated ray tracing graphics engine in it’s own right, it uses 7MB of executable code all together.
To investigate nvidia’s driver further, I downloaded the 106MB AMD64 linux driver and started poking around. It decompresses to 485MB. Right off the bat, there’s 180MB of 32bit libraries that are not even applicable considering Ubuntu has officially dropped 32bit builds.
I believe nvidia_drv.so is what contains nvidia’s proprietary hardware driver itself, which is 6MB.
Most of the space is actually used by userspace API libraries like Xwindows/cuda/egl/gl/opencl/rtcore 13MB – 30MB. The two biggest components are libnvidia-compiler.so coming in at 50MB and libnvoptix.so at a whopping 52MB for raytracing support. With no source code I can’t dig deeper to find more bloat, but I suspect it’s there.
I can’t even find software that makes use of nvidia raytracing on linux. Seriously, I’d actually like to try it, but there doesn’t seem to be anything that uses it on linux. The point being it probably doesn’t deserve space on the ubuntu installation disk given that 0% of users can presently use it.
Few people these days give much thought to something using hundreds of megabytes. That is perceived as normal now, but as someone from the old times when we counted bytes and cycles, it’s quite something, haha.
I came across this discussion regarding nvidia’s prohibition against data center uses. It’s disappointing to say the least.
https://forum.level1techs.com/t/are-geforce-cards-really-license-restricted-for-neural-net-and-or-datacenter-uses/141594/20
I’ve noticed that Pop!_OS (Ubuntu 19.04 spin) by System76 now has an option to download an ISO that automatically detects hardware and installs the proprietary Nvidia drivers. I wonder if they have an agreement with Nvidia about distribution by virtue of their status as a hardware vendor?