It only makes sense to demand them to give this away for free if you consider them a hardware company and a hardware company only.
Look at them as a solutions company and the first question to answer is: why is it fine for companies like Oracle, Microsoft, Adobe etc and any other software company to profit from closed software yet a company should be ostracized for it as soon as hardware becomes part of the deal?
Nvidia invested 15 years in developing and promoting a vast set of GPU compute libraries and tools. AMD has only paid lip service and to this day treats it as an ugly stepchild, they don't even bother anymore to support consumer architectures. Nvidia is IMO totally justified to reap the rewards of what they've created.
Please don't misrepresent my statement, I haven't demanded they give anything away for free. If you're referring to the CUDA drivers, the binaries for those are already free with the hardware. And if AMD truly doesn't care about it then that's even more reason for them to open source it, because they can't really claim they're keeping it closed source to hamstring the competition anymore.
wrt Oracle, Microsoft, Adobe, and the others: I've been asking them to open source key products every chance I get. Just so you know where I'm coming from.
CUDA support for docker containers is provided through the open source Nvidia-Docker project maintained by Nvidia[1]. If anything this is a great argument for NVIDIAs usage of open source.
Searching that project's issues shows that Nvidia-Docker support on MacOS is blocked by the VM used by Docker for Mac(xhyve) not supporting PCI passthrough, which is required for any containers to use host GPU resources.[2]
xhyve has an issue for PCI passthrough, updated a few months ago, which notes that the APIs provided by Apple through DriverKit are insufficient for this use case[3]
Apple is why you can't use Nvidia hardware on a Mac, not Nvidia. Apple has exclusive control over the drivers. Nvidia can't release updates or fix things on Mac OS.
I'm all for railing on the shitty things Nvidia does do, but no reason to add some made up ones onto the pile.
« I spent most of the afternoon hacking away at some unsupported edge case on an unsupported platform which is inadequate for what I’m trying to do. It doesn’t work, which is clearly nvidia’s fault. »