Andrzej Janik a présenté une mise à jour du projet ZLUDA, qui développe une implémentation ouverte de la technologie CUDA. L'objectif du projet est de permettre l'exécution d'applications CUDA non modifiées sur des systèmes avec des GPU autres que les GPU NVIDIA, avec des performances proches de celles des applications s'exécutant sans intermédiaires. Le code du projet est distribué sous les licences MIT et Apache 2.0.
ZLUDA 4 est présenté comme la première version formée après le nettoyage de la base de code des éléments développés pendant le travail d'Andrzej chez AMD. Depuis 2022, Andrzej a travaillé chez AMD sur la création d'une couche de compatibilité pour les GPU AMD avec CUDA, mais en 2024, le projet a été abandonné. Conformément aux conditions de son contrat et après avoir obtenu la permission de publication d'un représentant d'AMD, Andrzej a ouvert le code des travaux réalisés pendant son passage chez AMD, permettant l'exécution d'applications CUDA sur la pile ROCm et le runtime HIP (Heterogeneous-computing Interface for Portability). En octobre, Andrzej a été contraint de retirer le code de l'accès public après une lettre d'avocats indiquant que la permission obtenue par e-mail n'avait pas force obligatoire.
La nouvelle version de ZLUDA est formée sur la base de code existant avant le début du travail d'Andrzej chez AMD, n'est pas liée à un GPU spécifique et se concentre sur l'exécution d'applications utilisant CUDA pour accélérer des tâches liées à l'apprentissage automatique et à l'intelligence artificielle. Le projet est pour l'instant limité aux GPU AMD, mais sera adapté ultérieurement pour les GPU Intel. La sortie de ZLUDA 4 est écrite en Rust et vise l'exécution du banc d'essai Geekbench 5.
La nouvelle version comprend un nouveau parseur pour PTX, un langage intermédiaire utilisé dans les GPU NVIDIA. Cette version est également marquée par l'abandon de l'émulation des instructions d'incrément et de décrément spécifiques aux GPU NVIDIA, ces instructions étant désormais remplacées par des instructions similaires pour les GPU AMD. Ces modifications ont permis d'obtenir une amélioration des performances lors du test Geekbench d'environ 10%, par rapport à OpenCL et à la branche ZLUDA 3.

Source : opennet.ru
