ZLUDA respira con nuevos aires y se revertirá el código a antes de AMD y continuará el desarrollo
A mediados del mes de Agosto compartíamos aquí en el blog la noticia sobre la petición (exigencia) por parte de AMD a Andrzej Janik, retirar del dominio público una parte del código del proyecto ZLUDA, un proyecto que busca crear una implementación abierta de la tecnología CUDA.
Sobre la notificación que realizo en su momento AMD, esta llegó después de seis meses después de que el código se hiciera público, los abogados de AMD contactaron a Andrzej, informándole que el permiso concedido durante la correspondencia no tenía validez legal.
Hay que recordar que el objetivo principal de ZLUDA es permitir que sistemas con GPU no NVIDIA ejecuten aplicaciones CUDA sin modificaciones y con un rendimiento comparable al de las aplicaciones nativas, es decir, sin capas de emulación que reduzcan su eficiencia.
En 2022, Janik se unió a AMD para trabajar en una capa de compatibilidad CUDA para las GPU de la empresa. Sin embargo, tras dos años de desarrollo, AMD dejó de interesarse en esta iniciativa. Después de recibir inicialmente permiso de un representante de AMD para publicar el código desarrollado durante su trabajo con la compañía, Andrzej lo liberó al público. No obstante, seis meses después de la publicación, los abogados de AMD se pusieron en contacto con él, afirmando que el permiso otorgado no tenía validez legal. Como resultado, Janik se vio obligado a retirar el código de ZLUDA relacionado con su trabajo en AMD.
Sobre este caso, Andrzej Janik mencionó que no abandonaría el proyecto y que buscaría una ruta alterna para continuar con el desarrollo, pero sin tener que recurrir a los avances que había logrado mientras trabajaba para AMD.
El código se ha revertido al estado anterior a AMD y he estado trabajando frenéticamente para mejorar la base de código. He estado escribiendo el analizador PTX mejorado que siempre quise y he sentado las bases para la reconstrucción.
Y ahora tal perece que el nuevo punto de partida para el proyecto ZLUDA se ha generado, pues hace poco Andrzej Janik presento el nuevo plan para el futuro desarrollo de ZLUDA.
ZLUDA ha vuelto. Durante los últimos meses, he estado intentando encontrar una organización comercial que garantice el desarrollo continuo del proyecto. Me complace anunciar que he encontrado una que no solo está dispuesta a financiar un mayor desarrollo, sino que también tiene una excelente visión para el futuro de ZLUDA. Comparto su visión a largo plazo y no puedo esperar a hablar más sobre ella. No queremos revelar todo todavía, pero por ahora, sabemos que queremos mejorar ZLUDA
Andrzej Janik menciona que la nueva versión de ZLUDA estará basada en el código original desarrollado antes de que Andrzej Janik comenzara a trabajar en AMD. Esta nueva implementación no estará vinculada a ninguna GPU específica y se centrará en la ejecución de aplicaciones que utilizan CUDA para tareas de aprendizaje automático e inteligencia artificial. Anteriormente, ZLUDA se enfocaba principalmente en aplicaciones de creación de contenidos como Arnold Render, Blender y 3DF Zephyr.
En esta nueva etapa, ZLUDA ofrecerá soporte para ejecutar marcos como Llama.cpp, PyTorch y TensorFlow con las optimizaciones CUDA utilizadas por las GPU de NVIDIA. Inicialmente, el proyecto se concentrará en el soporte para GPU AMD, y más adelante se adaptará para GPU Intel.
Ademas de ello, se menciona que el nuevo ZLUDA será diseñado para soportar múltiples arquitecturas de GPU, con un enfoque inicial en las GPU AMD. La implementación de AMD será creada desde cero, y está diseñada para ser compatible con GPU basadas en la arquitectura RDNA1 en adelante.
Antes de la reversión del código anterior, ZLUDA se había mantenido en ROCm 5, principalmente para evitar volver a probar todas las soluciones específicas de esa versión. Ahora que el desarrollo comenzará desde cero, la nueva implementación de ZLUDA para AMD utilizará ROCm 6.1+, lo que permitirá aprovechar las características más avanzadas y mejorar la compatibilidad en futuras arquitecturas.
Se espera que para el tercer trimestre de 2025 ZLUDA alcance la paridad de funcionalidad con la versión eliminada previamente, permitiendo que las GPU AMD ejecuten aplicaciones CUDA con un rendimiento competitivo.
Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.