AMD a récemment financé discrètement le développement d’une implémentation compatible CUDA, basée sur ROCm. Cette avancée majeure, initialement gardée secrète, offre une solution pratique pour exécuter des applications CUDA sur les cartes graphiques Radeon, sans nécessiter d’intervention des développeurs. Cette initiative, fruit de deux années de travail, a été menée par Andrzej Janik, l’ingénieur derrière le projet ZLUDA.
ZLUDA : Le Successeur d’un Projet Avorté
ZLUDA, initialement conçu pour les GPU Intel, visait à fournir une implémentation CUDA compatible avec les cartes graphiques du fabricant. Bien que ce projet ait été abandonné, AMD a vu en Janik l’opportunité de l’adapter à ses propres cartes graphiques. Avec les financements d’AMD, Janik a travaillé à rendre possible l’exécution d’applications CUDA sur les cartes Radeon via ROCm.
Bien que AMD ait décidé de mettre fin au financement du projet cette année, une clause dans le contrat a permis à Janik de rendre le travail open-source. Cette décision a conduit à la disponibilité publique de l’implémentation ZLUDA pour ROCm. Les tests effectués par des tiers ont confirmé que de nombreuses applications CUDA fonctionnent sans modification sur les GPU Radeon, ouvrant ainsi de nouvelles possibilités pour les utilisateurs finaux.

Les tests initiaux ont montré que l’implémentation ZLUDA offre des performances satisfaisantes dans la plupart des cas d’utilisation. Cependant, il convient de noter que certaines fonctionnalités, telles que le support incomplet de NVIDIA OptiX, pourraient limiter son utilité pour certains cas d’utilisation avancés. Malgré cela, l’effort unique d’Andrzej Janik est impressionnant et prometteur pour l’avenir des calculs GPU sur les cartes Radeon.
Le code source de ZLUDA est désormais disponible sous une double licence Apache 2.0 ou MIT, offrant ainsi une flexibilité maximale aux utilisateurs. De plus, les aficionados du langage de programmation Rust seront ravis d’apprendre que ce langage a été utilisé pour la mise en œuvre de l’implémentation Radeon de ZLUDA.
Bien que des limitations subsistent, l’ouverture du code source de ZLUDA offre de nouvelles perspectives pour l’utilisation de ces cartes dans des domaines où CUDA était autrefois indispensable.
Source