Monday, February 12th 2024

AMD Develops ROCm-based Solution to Run Unmodified NVIDIA's CUDA Binaries on AMD Graphics

AMD has quietly funded an effort over the past two years to enable binary compatibility for NVIDIA CUDA applications on their ROCm stack. This allows CUDA software to run on AMD Radeon GPUs without adapting the source code. The project responsible is ZLUDA, which was initially developed to provide CUDA support on Intel graphics. The developer behind ZLUDA, Andrzej Janik, was contracted by AMD in 2022 to adapt his project for use on Radeon GPUs with HIP/ROCm. He spent two years bringing functional CUDA support to AMD's platform, allowing many real-world CUDA workloads to run without modification. AMD decided not to productize this effort for unknown reasons but did open-source it once funding ended per their agreement. Over at Phoronix, there were several benchmarks testing AMD's ZLUDA implementation over a wide variety of benchmarks.

Benchmarks found that proprietary CUDA renderers and software worked on Radeon GPUs out-of-the-box with the drop-in ZLUDA library replacements. CUDA-optimized Blender 4.0 rendering now runs faster on AMD Radeon GPUs than the native ROCm/HIP port, reducing render times by around 10-20%, depending on the scene. The implementation is surprisingly robust, considering it was a single-developer project. However, there are some limitations—OptiX and PTX assembly codes still need to be fully supported. Overall, though, testing showed very promising results. Over the generic OpenCL runtimes in Geekbench, CUDA-optimized binaries produce up to 75% better results. With the ZLUDA libraries handling API translation, unmodified CUDA binaries can now run directly on top of ROCm and Radeon GPUs. Strangely, the ZLUDA port targets AMD ROCm 5.7, not the newest 6.x versions. Only time will tell if AMD continues investing in this approach to simplify porting of CUDA software. However, the open-sourced project now enables anyone to contribute and help improve compatibility. For a complete review, check out Phoronix tests.
Sources: Phoronix, ZLUDA
Add your own comment

54 Comments on AMD Develops ROCm-based Solution to Run Unmodified NVIDIA's CUDA Binaries on AMD Graphics

#51
AusWolf
lexluthermiesterUm, no. CUDA and PhysX are NVidia exclusive features. CUDA always has been. PhysX has been since the NVidia buyout. No non-NVidia GPU can natively run CUDA or PhysX. Full stop.
Yes. But I mean, aside from these, every other Nvidia feature was hardware-agnostic before RTX, and even PhysX wasn't advertised as heavily as DLSS is now.
Posted on Reply
#52
lexluthermiester
AusWolfYes. But I mean, aside from these, every other Nvidia feature was hardware-agnostic before RTX, and even PhysX wasn't advertised as heavily as DLSS is now.
Ah, ok, I see what you're trying to say. :toast: Thinking we were getting some crossed wires.:banghead: Sorry about that..
Posted on Reply
#53
ratirt
lexluthermiesterNo. CUDA is a NVidia feature ONLY. No one who has paid for a non-Nvidia card has paid for CUDA. Full stop.
Sure but you can execute CUDA binaries on radeon which does not have CUDA. So you dont need CUDA to run it.
Posted on Reply
#54
AusWolf
lexluthermiesterAh, ok, I see what you're trying to say. :toast: Thinking we were getting some crossed wires.:banghead: Sorry about that..
No worries. :) It isn't always easy to understand each other in written form. :D
Posted on Reply
Add your own comment
May 15th, 2024 08:42 EDT change timezone

New Forum Posts

Popular Reviews

Controversial News Posts