All'inizio di ottobre dello scorso anno abbiamo condiviso qui sul blog informazioni su la direzione che avrebbe preso ZLUDA, Il progetto di Andrzej Janik, che inizialmente era stato approvato da AMD per diventare di dominio pubblico e che successivamente si è ritrattato chiedendone il ritiro.
Da 2022, Andrzej stava lavorando presso AMD per lo sviluppo un livello di compatibilità che consentirebbe alle GPU AMD di eseguire applicazioni CUDA, una tecnologia ampiamente utilizzata per l'apprendimento automatico e attività di calcolo ad alte prestazioni.
Lo sviluppo si è concentrato sull'integrazione di CUDA con lo stack ROCm e il runtime HIP (Interfaccia eterogenea per la portabilità). Tuttavia, nel 2024, il progetto è stato sospeso, portando Andrzej a rendere open source il codice sviluppato nell'ambito del suo lavoro presso AMD, dopo aver ricevuto il consenso da un rappresentante dell'azienda.
Nonostante ciò, nel mese di ottobre, ha dovuto affrontare una battuta d'arresto legale, poiché attraverso una lettera dei legali della società (AMD) è stato chiarito che l'autorizzazione concessa tramite corrispondenza email non aveva validità legale. Ciò ha costretto Andrzej a ritirare il codice di accesso del pubblico, pregiudicando temporaneamente la continuità del progetto.
Ma ora, in un recente aggiornamento, Andrzej Janik ha condiviso i progressi del progetto ZLUDA dal suo ultimo post. La nuova edizione "ZLUDA 4" segna un punto di ripartenza significativo per il progetto dopo l'eliminazione del codice relativo al suo periodo in AMD.
ZLUDA 4 riemerge ora basato esclusivamente sul codice sviluppato prima del suo lavoro presso AMD, che lo dissocia da ogni precedente vincolo contrattuale. Questa nuova versione si concentra sull'abilitazione dell'esecuzione di applicazioni CUDA su hardware AMD, con piani futuri per adattarsi anche alle GPU Intel, garantendo che il progetto rimanga aperto e focalizzato sull'espansione dell'accessibilità di CUDA su diverse piattaforme.
Si è detto che ZLUDA 4 è scritto in Rust e introduce numerosi miglioramenti tecnici, incluso un nuovo parser per PTX, il linguaggio intermedio che NVIDIA utilizza nelle sue GPU.
Ciao a tutti, questo è il primo di tanti aggiornamenti ZLUDA. Ho lavorato duro e sono felice di annunciare che abbiamo raggiunto il primo traguardo: abbiamo una nuova versione di ZLUDA con un'app funzionante. ZLUDA può eseguire Geekbench 5.
Questo aggiornamento include anche alcune parole su come contribuire (Contribuisci a ZLUDA) e cambiamenti all'interno del "nuovo" ZLUDA (Nuovo Analizzatore, Modulo Atomico).
Inoltre, le emulazioni di istruzioni specifiche per le GPU NVIDIA sono state rimosse per le operazioni di incremento e decremento dei moduli, sostituendole con istruzioni native delle GPU AMD. Questa ottimizzazione tecnica ci ha permesso di migliorare le prestazioni nei test come Geekbench 5 di circa il 10%, rispetto all'utilizzo di OpenCL e del ramo precedente, ZLUDA 3 (anche se viene menzionato che questo miglioramento delle prestazioni è specifico di Geekbench e non può essere generalizzato).
A differenza delle versioni precedenti, ZLUDA 4 si basa esclusivamente su codice sviluppato prima del periodo di Andrzej Janik in AMD, garantendo così che non sia collegato ad opere precedenti tutelate da diritti contrattuali. Sebbene attualmente limitato alle GPU AMD, il progetto prevede di estendere il supporto alle GPU Intel in futuro.
D'altra parte, Andrzej Janik afferma che il progetto è attualmente supportato commercialmente e non accetta donazioni, accetta solo richieste di pull e altri contributi non monetari.
Ecco perché per chi è interessato a contribuire con una correzione del codice o un aggiornamento della documentazione è sufficiente aprire una richiesta pull.
Infine, va detto che Attualmente il progetto è ancora in una fase iniziale di sviluppo e come tale, l'obiettivo finale è che il "nuovo" ZLUDA raggiunga uno stato simile a quello che aveva prima del ritorno entro un anno (terzo trimestre del 2025).
Inoltre, viene detto che lo sviluppo attuale si concentra sulle GPU AMD, ma l'obiettivo futuro del nuovo ZLUDA è supportare più architetture GPU.
Infine, se sei interessato a saperne di più, puoi consultare i dettagli nel seguente link