A principios de octubre del año pasado, compartíamos aquí en el blog información sobre el rumbo que tomaría ZLUDA, el proyecto de Andrzej Janik, que inicialmente había tenido el visto bueno por parte de AMD para pasar al dominio público y que posteriormente se retractó y solicito su retiro.
Desde 2022, Andrzej estuvo trabajando en AMD para desarrollar una capa de compatibilidad que permitiera a las GPU AMD ejecutar aplicaciones CUDA, una tecnología ampliamente usada para tareas de aprendizaje automático y computación de alto rendimiento.
El desarrollo se centró en integrar CUDA con la pila ROCm y el runtime HIP (Heterogeneous Interface for Portability). Sin embargo, en 2024, el proyecto fue suspendido, lo que llevó a Andrzej a abrir el código desarrollado bajo el marco de su trabajo en AMD, tras recibir el consentimiento de un representante de la empresa.
A pesar de ello, en octubre, se enfrentó a un contratiempo legal, ya que mediante una carta de los abogados de la compañía (AMD) dejó claro que el permiso otorgado mediante correspondencia por correo electrónico no tenía validez jurídica. Esto obligó a Andrzej a retirar el código del acceso público, afectando temporalmente la continuidad del proyecto.
Pero ahora, en una actualización reciente, Andrzej Janik compartió los avances en el proyecto ZLUDA desde su última publicación. La nueva edición «ZLUDA 4», marca un punto de reinicio significativo para el proyecto tras la eliminación del código relacionado con su etapa en AMD.
ZLUDA 4 resurge ahora basado únicamente en el código desarrollado antes de su trabajo en AMD, lo que lo desvincula de cualquier restricción contractual previa. Esta nueva versión se enfoca en habilitar la ejecución de aplicaciones CUDA en hardware AMD, con planes a futuro para adaptarse también a Intel GPUs, asegurando que el proyecto se mantenga abierto y centrado en expandir la accesibilidad de CUDA en plataformas diversas.
Se menciona que ZLUDA 4 está escrito en Rust e introduce varias mejoras técnicas, entre ellas un nuevo analizador para PTX, el lenguaje intermedio que NVIDIA utiliza en sus GPUs.
Hola a todos, es la primera de muchas actualizaciones de ZLUDA. He estado trabajando duro y me complace anunciar que hemos alcanzado el primer hito: tenemos una nueva versión de ZLUDA con una aplicación que funciona. ZLUDA puede ejecutar Geekbench 5.
Esta actualización también incluye algunas palabras sobre cómo contribuir ( Contribuir a ZLUDA ) y cambios en el interior del «nuevo» ZLUDA ( Nuevo analizador , Módulo atómico ).
Además, se eliminaron las emulaciones de instrucciones específicas de las GPUs NVIDIA para operaciones de incremento y decremento de módulo, sustituyéndolas por instrucciones nativas de las GPUs AMD. Esta optimización técnica ha permitido mejorar el rendimiento en pruebas como Geekbench 5 en aproximadamente un 10%, en comparación con el uso de OpenCL y la rama anterior, ZLUDA 3 (aun que se menciona que esta mejora del rendimiento es específica de Geekbench y no se puede generalizar).
A diferencia de sus versiones anteriores, ZLUDA 4 se basa exclusivamente en el código desarrollado antes de la etapa de Andrzej Janik en AMD, asegurando así que no esté ligada a trabajos previos protegidos por derechos contractuales. Aunque actualmente se limita a GPUs de AMD, el proyecto planea extender su compatibilidad a GPUs de Intel en el futuro.
Por otra parte, Andrzej Janik menciona que actualmente el proyecto tiene un respaldo comercial y no acepta donaciones, solamente acepta solicitudes de incorporación de cambios y otras contribuciones no monetarias.
Es por ello que para los interesados en contribuir con una corrección de código o una actualización de la documentación, basta con abrir una solicitud de extracción.
Finalmente, cabe mencionar que actualmente el proyecto se encuentra aún en una fase temprana de desarrollo y como tal, el objetivo final es que la «nueva» ZLUDA alcance un estado similar al que tenía antes de la reversión en un año (tercer trimestre de 2025).
Además, se menciona que el desarrollo actual se centra en GPU AMD, pero el objetivo a futuro del nuevo ZLUDA es soportar múltiples arquitecturas de GPU.
Finalmente, si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.
Continúar leyendo...