Andrzej Janik ha presentato il rilascio di ZLUDA 6, un'implementazione open-source della tecnologia CUDA. L'obiettivo del progetto è fornire la possibilità di eseguire applicazioni CUDA non modificate su sistemi con GPU diverse da quelle NVIDIA, mantenendo prestazioni vicine a quelle delle applicazioni eseguite senza layer. Il codice del progetto è scritto in Rust e distribuito sotto le licenze MIT e Apache 2.0.
ZLUDA 6 è diventato il terzo rilascio significativo del progetto, formato dopo
la pulizia della base di codice da parte di Andrzej, effettuata in seguito alla sua esperienza in AMD. Dal 2022, Andrzej ha lavorato in AMD per creare uno strato di compatibilità tra le GPU AMD e CUDA, ma nel 2024 il progetto è stato interrotto. In conformità con i termini del contratto e dopo aver ricevuto il permesso di pubblicazione da un rappresentante di AMD, Andrzej ha reso pubblico il codice dei progressi realizzati durante la sua attività in AMD, consentendo l'esecuzione di applicazioni CUDA sopra lo stack ROCm e il runtime HIP (Heterogeneous-computing Interface for Portability).
Due anni fa, Andrzej è stato costretto a rimuovere il codice dall'accesso pubblico dopo aver ricevuto una lettera da avvocati che hanno fatto capire che il permesso dato durante le comunicazioni via email non ha alcun valore legale. Successivamente, Andrzej ha iniziato a lavorare a una nuova edizione di ZLUDA, basata sul codice sorgente esistente prima dell'inizio del suo lavoro in AMD. Nella sua attuale versione, lo sviluppo è focalizzato sulla realizzazione di applicazioni che utilizzano CUDA per accelerare task legati all'apprendimento automatico. Il progetto è attualmente limitato ai GPU AMD, ma in futuro sarà adattato per i GPU Intel.
Nella nuova versione è stata aggiunta una prima supporto per l'esecuzione sopra ZLUDA del motore di simulazione dei processi fisici PhysX e del sistema di modellazione 3D Blender. Il supporto per PhysX è attualmente in fase iniziale.
La versione alpha è limitata alla possibilità di eseguire build a 32 bit di PhysX, permettendo così a sistemi con GPU AMD di avviare alcuni giochi più vecchi che utilizzano questo motore. Ad esempio, in Mafia II, attivando ZLUDA è stato possibile aumentare il FPS da 26 a 80 fotogrammi al secondo. È stata implementata un supporto per texture sufficiente per eseguire Blender utilizzando ZLUDA. È notevolmente migliorato il supporto per la piattaforma Windows. Sono state ampliate le capacità di esecuzione di framework per modelli linguistici di grandi dimensioni, come PyTorch, utilizzando ottimizzazioni CUDA applicabili per GPU NVIDIA.
Fonte: opennet.ru
