ZLUDA - launching Nvidia miners on AMD graphics cards

launching cuda miner on AMD

AMD graphics cards were considered the best choice for mining ten years ago because they offered higher performance on popular mining algorithms of that time such as SHA-256, Scrypt, Ethash, Cryptonight, while being noticeably cheaper. Additionally, mining software (miners) usually debuted for AMD graphics cards initially, before Nvidia. This allowed for early exploitation of new cryptocurrencies. However, at present, AMD has lost its leadership in mining to Nvidia as Nvidia graphics cards are more efficient for mining. Miners for new algorithms are primarily released for Nvidia cards first, and then for AMD cards. The only remaining advantage of AMD products is their price, although the cost gap between graphics cards is not as significant as it was ten years ago.

This doesn't mean that AMD products are completely ineffective for mining at present. Especially with the ZLUDA program, owners of Radeon graphics cards can overcome one disadvantage and start mining cryptocurrencies even if there's only miner software available for Nvidia cards.

In other words, ZLUDA allows users to easily utilize software specifically designed for Nvidia cards with just one click. This isn't limited to mining programs, as Zluda enables running rendering programs like V-Ray and Blender on AMD graphics cards, which only support acceleration through Nvidia cards (CUDA).

According to the developer, the performance loss when running CUDA applications on AMD graphics cards is minimal or nonexistent. This is achieved using a similar principle to Apple's transition from Intel processors to their own ARM processors with the M1, enabling running x86 applications on ARM processors without loss through their code translator (emulator) Rosetta 2.

Zluda operates similarly as a translator or emulator for Nvidia graphics cards. Before running CUDA applications, the code undergoes a similar translation process, which takes some time. However, after this process, software designed for Nvidia hardware operates on AMD cards without suspicion.

Zluda's operation is based on the ROCm computation library developed by AMD to compete with CUDA, effectively being its clone. Within the ROCm package, there's a special program for converting CUDA commands to ROCm commands called HIPIFY. The programming language for ROCm is called HIP.

This means that running computational programs for CUDA on AMD graphics cards has been possible since 2016 when ROCm was introduced. However, accessing the code was necessary for this, which was not possible for regular users with ready-made products like miners or Blender.

With Zluda, similar to Apple's Rosetta 2, you don't need the source code of the program as the translation occurs during the execution of the application, where the emulator selects ROCm commands for CUDA requests from the emulated application. In cases where a direct analogue is not found, dynamic code compilation (JIT) occurs. As ROCm is a direct analogue of CUDA unlike X86 and ARM architectures, the issues with emulating CUDA application code should be minimal.

Support for ROCm starts with Polaris generation graphics cards, namely Radeon RX 400 series and newer. Therefore, theoretically, emulation of CUDA applications should work on all AMD graphics cards newer than 2016.

amd rocm cuda

Unfortunately, we cannot test the idea of running Nvidia cryptocurrency miners on AMD solutions due to the absence of the latter. However, judging by the enthusiastic feedback on Blender and V-Ray performance on Radeon graphics cards, there shouldn't be any problems with CUDA miners as well.

If you have the desire and means for such experiments, we would be grateful if you could provide feedback on your experiments in this area in our Telegram chat Cryptoage.

For Linux, you will need to install ROCm and the ZLUDA code translator directly.

For Windows, there is also a compiled version of Zluda available, but instead of ROCm, the HIP SDK package is installed.