Comment by karmakaze

3 months ago

It's not that it only works on Nvidia cards, it's only allowed to work on Nvidia cards. A non-clean room implementation of CUDA for other hardware has been done but is a violation of EULA (of the thing that was reverse engineered), copyright on the driver binary interface, and often patents. Nvidia aggressively sends cease-and-desist letters and threatens lawsuits (successfully killed ZLUDA, threatened others). It's an artificial (in a technical sense moat).

> successfully killed ZLUDA

Did they? Sounds like AMD did that[^1] and that the project is continuing based on the pre-AMD codebase[^2].

[^1]: https://www.phoronix.com/news/AMD-ZLUDA-CUDA-Taken-Down

[^2]: https://www.phoronix.com/news/ZLUDA-Third-Life

  • Unless ZLUDA can show that it is a clean room re-implementation from a spec without contact with the CUDA libraries, it would be a bad place for AMD to place themselves. That could be reason enough to retract voluntarily before any bad press. Such a thing is possible but likely much harder than Compaq re-implementing IBM PC BIOS.

I don't think you can make the EULA bite here?

To circumvent: you have someone (who might be bound by the EULA, and is otherwise not affiliated with you) dump the data on the internet, and someone else (from your company) can find it there, without being bound by the EULA. Nvidia could only sue the first guy for violating the EULA.

However you are right, that copyright and patents still bite.