Saw this on reddit, but not exactly sure what it means in practical terms;
I am not sure I agree with the nomenclature of “reverse-engineering CUDA”. CUDA combines API and language elements, and both of these are extensively documented. Granted, there are some corners where these are not as tightly defined as a more formal specification would (historic exhibit A: warp-synchronous programming).
But making a CUDA clone for a non-NVIDIA platform should be fairly straightforward, not much “reverse engineering” should be involved in the process. However, re-creating equivalents of the large numbers of libraries that come with CUDA could be a significant obstacle.
I have never seen a public statement by NVIDIA that said they are opposed to third parties creating CUDA clones for non-NVIDIA platforms. Lets see how this particular effort goes.
Now, if instead of CUDA we talk about the GPUs themselves, so little information has been made public by NVIDIA that a massive amount of reverse engineering would be needed to clone those.
AMD is also releaseing support for CUDA on their platforms with HIP (heterogeneous-compute Interface for Portability).
Will otoy release and maintain their CUDA for ARM/INTEL/AMD utility?
Which platforms exactly does it support?