AMD ha richiesto di rimuovere parte del codice ZLUDA dal pubblico dominio

ZLUDA funziona sullo stack ROCm di AMD

Qualche mese fa ho condiviso sul nostro blog gemello, "Linux Addicts", la notizia della decisione di AMD di smettere di finanziare lo sviluppo di ZLUDA, questo perché all'epoca AMD aveva affermato che non era nel suo interesse commerciale e questo ha permesso allo sviluppatore di aprirsi i suoi sviluppi come concordato nel contratto.

ZLUDA è stato inizialmente sviluppato per le GPU Intel. Tuttavia, nel 2022, lo sviluppatore del progetto ha lasciato Intel e ha firmato un contratto con AMD per sviluppare un livello compatibile con CUDA per le sue GPU.

Dopo di che all'inizio di quest'anno 2024 AMD ha stabilito che non era strategico per la sua attività consentire l'esecuzione di applicazioni CUDA sulle proprie GPU (probabilmente per paura di problemi legali con NVIDIA). Secondo i termini del suo contratto, ciò ha consentito ad Andrzej (noto per il suo lavoro di creazione di implementazioni della tecnologia CUDA per GPU Intel e AMD) di rendere pubblici i suoi sviluppi e, durante gli scambi di e-mail, un rappresentante di AMD gli ha anche concesso il permesso di pubblicare questi progressi.

Da allora ciò ha suscitato grande interesse nella comunità ZLUDA ha promesso di offrire compatibilità binaria con le applicazioni CUDA già compilato con il compilatore CUDA per GPU NVIDIA, senza la necessità di modificare il codice sorgente. Questa capacità consentirebbe agli sviluppatori e agli utenti di eseguire applicazioni progettate per NVIDIA su hardware AMD e Intel nessuna complicazione. Pertanto, ZLUDA consente l'esecuzione di applicazioni CUDA senza modifiche su sistemi con GPU AMD, utilizzando lo stack ROCm e il runtime HIP.

Ma adesso questo è cambiato, da poco tempo AMD ha chiesto ad Andrzej Janik di rimuovere parte del codice dal pubblico dominio il progetto. Questa notifica Dopo sei mesi dalla pubblicazione del codice, gli avvocati di AMD hanno contattato Andrzej, informandolo che il permesso concesso durante la corrispondenza non aveva validità legale.

A causa di un accordo di riservatezza, i dettagli delle comunicazioni con gli avvocati non possono essere divulgati da AMD. Come risultato di questa situazione, Andrzej è stato costretto a rimuovere dal pubblico dominio tutto il codice che aveva sviluppato mentre lavorava per AMD.

Sul caso Andrzej Janik ha dichiarato di non avere intenzione di abbandonare il progetto ZLUDA e prevede di ricostruirlo utilizzando il codice che aveva sviluppato prima di iniziare la collaborazione con AMD (questo codice era originariamente progettato per funzionare con le GPU Intel).

Il codice precedentemente presente qui è stato rimosso su richiesta di AMD.
Il codice è stato rilasciato con l'approvazione di AMD via e-mail. L'ufficio legale di AMD ora afferma che non è legalmente vincolante, da qui la revoca.
Prima che qualcuno lo chieda: non ho ricevuto minacce legali o comunicazioni da NVIDIA.

¿Y ahora qué?
A questo punto, un'altra società ostile non fa molta differenza. Ho intenzione di ricostruire ZLUDA dalla codebase pre-AMD. I finanziamenti per il progetto stanno arrivando e spero di poter condividere i dettagli nelle prossime settimane. Avrà una portata diversa e alcune funzionalità non torneranno.
Volevo che fosse una sorpresa, ma una di queste funzionalità era il supporto per NVIDIA GameWorks. L'ho fatto funzionare in Batman: Arkham Knight, ma non l'ho mai finito e ora quel codice non vedrà mai la luce:

Inoltre, afferma che nelle prossime settimane, Maggiori dettagli verranno offerti sul futuro del progetto. Tuttavia è già stato annunciato che alcune funzionalità andranno perse e che alcuni progetti sviluppati parallelamente non verranno resi pubblici.

Un esempio di ciò è il lavoro svolto per supportare la tecnologia NVIDIA GameWorks, che ha cercato di implementare effetti basati su GameWorks nel gioco "Batman: Arkham Knight".

Curiosamente, NVIDIA, proprietaria della tecnologia CUDA, non ha emesso alcuna richiesta relativo al progetto ZLUDA, quindi è possibile che AMD abbia riflettuto a fondo e abbia intenzione di utilizzare lo sviluppo per qualche progetto o abbia in mente di continuare lo sviluppo da dove era stato interrotto.