ZLUDA is an innovative open-source project designed to bridge the gap between NVIDIA's CUDA ecosystem and non-NVIDIA GPUs, particularly AMD Radeon RX 5000 series and newer (including both desktop and integrated models). As a drop-in replacement for CUDA, ZLUDA allows existing CUDA applications to run on AMD hardware without modification, achieving performance close to native implementations.
This project represents a significant breakthrough in GPU computing, as it potentially unlocks AMD hardware for the vast library of existing CUDA applications. The current version is under active development and primarily supports Geekbench, with plans to expand compatibility. Users need recent AMD GPU drivers (AMD Software: Adrenalin Edition) installed for proper functionality.
ZLUDA provides two methods for running applications: either by replacing CUDA DLLs in the application directory or using the ZLUDA launcher (though the latter is currently noted as buggy). The project has commercial backing but welcomes code contributions through pull requests, particularly for bug fixes and documentation updates.
The technology behind ZLUDA involves two key components: a PTX compiler (ptx) and an AMD GPU runtime (zluda). Developers interested in contributing can start by examining the unit tests, particularly simple operations like the addition test (cargo test -p ptx -- ::add_hip
).
ZLUDA is dual-licensed under either Apache 2.0 or MIT licenses, offering flexibility for both open-source and commercial use. The project maintains active communication through Discord, where users and developers can discuss issues and potential contributions.