Andrzej Janik apresentou o lançamento do ZLUDA 6, uma implementação aberta da tecnologia CUDA. O objetivo do projeto é possibilitar a execução de aplicativos CUDA não modificados em sistemas com GPUs diferentes das GPUs NVIDIA, com desempenho próximo ao de aplicativos executados sem sobrecargas. O código do projeto é escrito na linguagem Rust e é distribuído sob as licenças MIT e Apache 2.0.
O ZLUDA 6 foi o terceiro lançamento significativo do projeto, formado após
a limpeza da base de código de trechos desenvolvidos durante o tempo de Andrzej na AMD. Desde 2022, Andrzej trabalhou na AMD na criação de uma camada de compatibilidade para GPUs AMD com CUDA, mas em 2024, o projeto foi encerrado. Em conformidade com os termos do contrato e após obter permissão para publicação de um representante da AMD, Andrzej abriu o código dos desenvolvimentos realizados durante seu trabalho na AMD, permitindo a execução de aplicativos CUDA sobre a pilha ROCm e o runtime HIP (Heterogeneous-computing Interface for Portability).
No ano passado, Andrzej foi forçado a remover o código do acesso público após uma carta de advogados, que esclareceram que a permissão dada durante a troca de e-mails não tinha valor legal. Após isso, Andrzej começou a trabalhar em uma nova edição do ZLUDA, baseada na base de código existente antes do início de seu trabalho na AMD. Na sua forma atual, o desenvolvimento está focado na execução de aplicativos que utilizam CUDA para acelerar tarefas relacionadas ao aprendizado de máquina. O projeto ainda está limitado ao funcionamento em GPUs AMD, mas será adaptado no futuro para GPUs Intel.
Na nova versão, foi adicionada uma suporte inicial para a execução do mecanismo de simulação de processos físicos PhysX e do sistema de modelagem 3D Blender sobre o ZLUDA. O suporte ao PhysX ainda está em fase beta
e é limitado à execução de compilações de 32 bits do PhysX, permitindo que sistemas com GPUs AMD executem alguns jogos antigos que utilizam este motor. Por exemplo, no jogo Mafia II, após ativar o ZLUDA, foi possível aumentar o FPS de 26 para 80 quadros por segundo. O suporte a texturas foi implementado a ponto de permitir a execução do Blender utilizando o ZLUDA. O suporte para a plataforma Windows foi significativamente aprimorado. As capacidades para execução de frameworks de grandes modelos de linguagem (como PyTorch) com otimizações CUDA aplicáveis a GPUs NVIDIA foram ampliadas sobre o ZLUDA.
Fonte: opennet.ru
