Live data from Hacker News

Nvidia bans using translation layers for CUDA software to run on other chips

tomshardware.com

61–70 of 179 posts

Re: Nvidia bans using translation layers for CUDA software to run on other chips

#61

IANAL, but I don't see how this can be enforced (in the US) given the legal history of emulation. This is effectively just emulation. c.f., https://emulation.gametechwiki.com/index.php/Licensing

I think they're trying to do the trick where they don't ban the emulation per se, but they make it a violation of the license to disassemble the code to understand how it works. Then they go after emulating projects for copyright infringement, since they must have violated copyright to get a compatible version running. It's a dirty trick IMO, but it has seen some mixed success.

The alternative is NVIDIA charging for what they're spending money on and making CUDA as big a cost as the hardware. I don't know what I agree with but hardware-supported-software being free is a good thing, your competitors being able to use it for free is a bad thing.

I wonder legally if it would work to instead have licensing that charged a reasonable fee to run CUDA on non-NVIDIA hardware. Just don't enforce it for developers, but have it big enough and enforced enough so corporations would hesitate or pay... or just make it large enough to make it not make sense to run on non-NVIDIA cards.

Re: Nvidia bans using translation layers for CUDA software to run on other chips

#62

I don't understand why Nvidia is so obstinate on this front. They would solidify their lead in hardware if they open sourced the entire CUDA software stack. Their hardware competitors are going to reverse it anyway, so they may as well open source the thing and benefit from all the momentum that comes with owning the community's favored software and the hardware that it runs on.

Nvidia is worth more money than God because every ML pipeline out there uses CUDA and the only way to use CUDA is on Nvidia hardware - they already own the community’s favored software and the hardware it runs on. CUDA’s not the product, it’s the moat.

Re: Nvidia bans using translation layers for CUDA software to run on other chips

#63
post #5

Earlier quoted context omitted.

What's the alternative? AMD only supports their (consumer) GPUs for ~4 years via ROCm in some instances. If you buy the card at any time except release day you only get a couple years of compute support. To answer my own question: opencl, and it's just as bad as it was in 2014. Or, slowly, people are starting to do compute with Vulkan. This might be the best way forwards even if it's an awkward choice.

Investment is not rewarded until the platform is used, which won't be until investments are made... it's a multi billion dollar chicken and egg problem that only could have been averted a decade ago by consumers refusing to be locked in to a proprietary standard.

A decade ago, CUDA was still offering a more usable platform than the competition. The problem could only have been averted if AMD had properly committed to investing in their platform at least decade ago, just as NVIDIA has been doing for almost 2 decades now.

Re: Nvidia bans using translation layers for CUDA software to run on other chips

#64

IANAL, but I don't see how this can be enforced (in the US) given the legal history of emulation. This is effectively just emulation. c.f., https://emulation.gametechwiki.com/index.php/Licensing

APIs aren't subject to copyright. So unless CUDA is more than an API they're just going to make some lawyers rich and waste everyone's time.

CUDA (and plenty of things lumped in with it that one would think of as CUDA) are not simply an API. Somewhere in between a programming language and a low level operating system.

Re: Nvidia bans using translation layers for CUDA software to run on other chips

#65

IANAL, but I don't see how this can be enforced (in the US) given the legal history of emulation. This is effectively just emulation. c.f., https://emulation.gametechwiki.com/index.php/Licensing

> given the legal history of emulation.

Funny you should say this just after Nintendo shut down Yuzu and collected hefty damages in the settlement.

Re: Nvidia bans using translation layers for CUDA software to run on other chips

#66

IANAL, but I don't see how this can be enforced (in the US) given the legal history of emulation. This is effectively just emulation. c.f., https://emulation.gametechwiki.com/index.php/Licensing

APIs aren't subject to copyright. So unless CUDA is more than an API they're just going to make some lawyers rich and waste everyone's time.

Per the Federal Circuit, APIs are subject to copyright. The Supreme Court just ruled that Google's use of APIs was fair use.

Re: Nvidia bans using translation layers for CUDA software to run on other chips

#67
post #31

Earlier quoted context omitted.

Hopefully Vulkan eventually gets a headless compute kernel version.

Vulkan has always supported headless mode, everything related to graphics and presentation is optional. It has a way to go before its compute model is as powerful and easy to use as CUDA is though.

There are various efforts to compile OpenCL and SYCL to Vulkan, the Mesa folks are working on this as part of the RustiCL project. But full capability will require some extensions beyond what plain Vulkan provides.

Re: Nvidia bans using translation layers for CUDA software to run on other chips

#68

This just seems to be a poorly researched knee-jerk article written based on a single off-hand tweet from 2 weeks ago, citing a clause that has been around for years, and thus obviously is not in response to something talked about 3 weeks ago. As an example, the license here has the exact phrase, on a file last changed 2 years ago: https://github.com/NVIDIA/spark-rapids-container/blob/dev/NO... The EULA here, listed…

I think you're focused too much on when this clause was added. Most of us are not so concerned with the chronology.

Re: Nvidia bans using translation layers for CUDA software to run on other chips

#69

Earlier quoted context omitted.

Hopefully Vulkan eventually gets a headless compute kernel version.

Could WebGPU fill that need?

WebGPU can't fill any need that GL, DirectX, or Vulkan can't. WebGPU isn't a native GPU API, but an abstraction over existing ones. As such its feature set is only ever at best comparable, but in practice will always be worse than the native ones (always worse due to needing to be implementable by multiple platforms - at a minimum both vulkan and metal)

Re: Nvidia bans using translation layers for CUDA software to run on other chips

#70
post #68

This just seems to be a poorly researched knee-jerk article written based on a single off-hand tweet from 2 weeks ago, citing a clause that has been around for years, and thus obviously is not in response to something talked about 3 weeks ago. As an example, the license here has the exact phrase, on a file last changed 2 years ago: https://github.com/NVIDIA/spark-rapids-container/blob/dev/NO... The EULA here, listed…

I think you're focused too much on when this clause was added. Most of us are not so concerned with the chronology.

Yet the article seems to imply they did it recently also according to my understanding, which is misleading.
Post reply on HN