Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Why cant AMD make their gpus to be CUDA compatible?


I'd say it's likely because NVIDA's CUDA compiler produces code for NVIDIA GPUs, and AMD would have a lot of (questionably legal) reverse engineering ahead of them in order to support the same code on their own GPUs.

If you're asking why AMD doesn't make a compiler for CUDA source code that targets their own GPUs--that's basically what ROCm currently does. They're pushing their CUDA alternative, called "HIP", which is essentially just CUDA code with a find-and-replace of "cuda" with "hip". (And other similarly minor changes.) They have an open source "hipify" program that does this automatically (https://github.com/ROCm-Developer-Tools/HIP/tree/master/hipi...).

So, basically, AMD GPUs are already sort of CUDA compatible: just run your CUDA code through hipify, then compile it using the HIP compiler, and run it on a ROCm-supported system (which, for now is the most spotty of all of these steps IMO).


If I remember correctly, CUDA is pretty tightly tied to Nvidia’s GPU architecture, so it would be very difficult to get the same things to run on AMD chips without them making huge changes to conform to Nvidia’s way of doing things.

I think there have been a few projects that try to translate CUDA stuff into OpenCL or other AMD-compatible compute platforms.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: