News Nvidia bans using translation layers for CUDA software to run on other chips — new restriction apparently targets ZLUDA and some Chinese GPU makers

Page 2 - Seeking answers? Join the Tom's Hardware community: where nearly two million members share solutions and discuss the latest tech.
Status
Not open for further replies.
That all comes down to whether you own the hardware.
In the USA, it used to be legal to do anything you wanted with a piece of hardware - including reverse-engineering it! I'm not an expert on the legal doctrine, but I know that ended sometime in the 1990's. I think it was sometime before the DMCA came along, but perhaps I'm wrong.

What are they gonna do? Ban Nvidia?
They would probably just hold that any terms in Nvidia's EULA which prevent such activities are unenforceable.
 
No way nVidia will open source or increase interoperability of CUDA. Their market cap is where it's at because of CUDA.

It would be like Apple tearing down their walled garden. It would wreck their revenue and invite a shareholder lawsuit.

Companies like AMD embrace open source because they need to catch up to nVidia. Just like Epic with Valve.
 
You're badly misinformed about these subjects. Spreading that flawed understanding is dangerous, in case someone should happen to act on it.

When you go to work for most companies, the first thing they'll have you do is sign a NDA (Non-Disclosure Agreement), stating that you will not improperly share or misappropriate proprietary information or trade secrets belonging to the company. This applies, even if you quit, or are terminated, and go to work for another employer.

In certain jurisdictions, it is illegal for companies to prevent you from working for one of their competitors (this is normally accomplished by having employees sign a "non-compete agreement"). California is one such place that bans non-compete agreements. Even so, if your former employer can establish that you utilized their proprietary information improperly (e.g. at a competitor, leaked it onto the internet, or even potentially at a company in a completely different industry - basically, anywhere without their express consent), they'll sue you for violating the NDA you signed with them.
AFAIK NDA purpose is to protect the IP , people can still create derivative work, I mean you want the brain behind the creation not the creation per se, also if the person hold some patents, like Shuji Nakamura, I want him in my team.
 
  • Like
Reactions: Order 66
In the USA, it used to be legal to do anything you wanted with a piece of hardware - including reverse-engineering it! I'm not an expert on the legal doctrine, but I know that ended sometime in the 1990's. I think it was sometime before the DMCA came along, but perhaps I'm wrong.


They would probably just hold that any terms in Nvidia's EULA which prevent such activities are unenforceable.
can the EULA be modified and applied retroactively? maybe I'm misunderstanding this, but when Sony did with PS3'sOother OS they get sued.
 
  • Like
Reactions: Order 66
That all comes down to whether you own the hardware. Once I have it in my hands I could presumably write my own code. How is that different than using any code on any hardware?

Software licensing, on the other hand, is a little different.

I didn't sign an agreement with Nvidia when I purchased my GPU. I did when I installed their driver, so they have rights to that software and how it is used. They really shouldn't be able to dictate what software I can use with the hardware. Now if that software uses something that Nvidia has licensed or patented, that is another matter.

Or take Emulators. That is running a piece of software on other hardware. But they don't sue because people use a PC instead of a handheld console, they sue about the unauthorized use of the software.
They were complaining the companies only support certain hardware with their software (they used 3D modeling software as their example) and were basically saying that they have the right to use whatever software they want on whatever hardware they want.

Yes if you own the hardware you should be able to use your own code on it, but that isn't the same as saying you should be able to use software licensed from some companies on whatever hardware you want.
 
Heh, you complain about liberties being taken with the word "right", but then you do quite a number on the word "supported".

There's a distinction between:
  1. The usage models a vendor asserts to work or even provides actual customer service to facilitate.
  2. That which is technically possible.
  3. What's legally permitted/forbidden by the vendor.

In this case, Nvidia never did "support" running CUDA code on another platform. The issue isn't that they haven't done any work to facilitate it, much less provide customer service to fix any problems you encounter. Rather, the issue is that even when all of the technical work is undertaken by others, Nvidia is using a legal mechanism to forbid its application!

I actually agree with you that (in the USA), we sadly don't have a legal right to use products in whatever way we see fit. However, if we start talking about a moral right to use legally-acquired products in ways that aren't outright destructive to the vendor or other users, then I've got to say I think the notion of liberty holds more sway. I feel like this is in the spirit of "fair use", although I seriously doubt it qualifies. I'm not a lawyer and would never claim the "fair use doctrine" applies, without a much more specific and detailed understanding.
It seems a few people are missing the point I was making. The person I replied to was implying they have the right to use any software on any hardware and gave the example of 3D modeling software. If you license software likely it will only work on certain hardware and you do not have the right to be able to run it on whatever you want, the software developer doesn't need to make it run on all hardware. Just like apple doesn't need to make it possible to use Windows programs on iOS or let you run iOS apps on your PC.

If you license software that only works on Nvidia GPUs you do not have the right to be able to use it with AMD GPUs. If it works then great but if AMD GPUs aren't supported and don't work then they aren't supported and don't work. You can not accuse the company of violating your rights because you are not able to run their software made for Nvidia GPUs on AMD GPUs.
 
The person I replied to was implying they have the right to use any software on any hardware and gave the example of 3D modeling software.
In the ideal world, the software vendor shouldn't be able to prevent me from running it on whatever hardware I want. They don't have to provide customer support, in the event I experience problems on a platform other than what they recommend, but they shouldn't be able to disallow me from even trying to run it on other hardware!

If you license software that only works on Nvidia GPUs you do not have the right to be able to use it with AMD GPUs. If it works then great
Nope. Nvidia's new EULA terms don't allow that last part. I'm not sure what they'll do, in the event of violations, but I'm sure they have a wide range of civil remedies at their disposal.

if AMD GPUs aren't supported and don't work then they aren't supported and don't work. You can not accuse the company of violating your rights because you are not able to run their software made for Nvidia GPUs on AMD GPUs.
Yes, obviously. Even in my "ideal world" scenario, software vendors should be able to say: "here's the hardware configurations we'll provide support services for". If you use anything else, then you're on your own to fix any problems you encounter. I think that's fair. If we're talking about software that relies on hardware acceleration, then a vendor can't realistically support the entire universe of hardware in existence.
 
  • Like
Reactions: Armbrust11
Isn't the point that the CUDA enabling software is Nvidia's IP, usually sublicensed to the third party software vendor to enable use with their proprietary hardware ? They are providing software support for their hardware.

Nvidia is well within it's rights to limit the use of software they authored, created and licensed.

Would it be reasonable to simply copy Tesla's self-driving software and load it into another car saying I can purchase any car I wish?
 
Last edited:
That is where it gets a little weird.

If I have a license to use say, Adobe products, with CUDA acceleration and I choose to run that acceleration via ZLUDA on an AMD GPU without reverse engineering, decompiling, or disassembly of any of the code in that product, am I violating the terms of use that I agreed to with Adobe/Nvidia?

8. You may not reverse engineer, decompile or disassemble any portion of the output generated using SDK elements for the purpose of translating such output artifacts to target a non-NVIDIA platform.

Really seems like something that a court should deal with. Of course fighting the deep pockets of Nvidia is likely impossible.

Not sure the analogy works. In this scenario no copying of any software happens. You are utilizing software that you are authorized to use (hopefully) and running it.

Anyone doing that successfully with Tesla software would be in a position to then sell that result for money, which would be very illegal. A single person pulling it off for their own use, not sure what the damages would be.
 
  • Like
Reactions: bit_user
Status
Not open for further replies.