AMD finalmente lançou seu driver XDNA no Linux
AMD divulgou novidades bastante interessante ao publicar o código-fonte controlador para suas unidades com arquitetura baseada em motor XDNA, que foi projetado para acelerar cálculos relacionados ao aprendizado de máquina e processamento de sinais, conhecidos como NPUs (unidades de processamento neural).
Esta NPU, baseada na
Esta série de processadores foi lançada no ano passado e a APU da série Ryzen 7040 “Phoenix”, foi a primeira a ser equipada com o mecanismo AI da arquitetura XDNA baseado em IP da Xilinx. Este mecanismo tem a capacidade de acelerar estruturas de aprendizado de máquina como PyTorch e TensorFlow.
Inicialmente O suporte do Ryzen AI foi limitado ao Windows. No entanto, após uma demonstração em junho de 2023, os funcionários da AMD pediram feedback à comunidade Linux no GitHub sobre se deveriam oferecer suporte à compatibilidade. Embora o tópico de discussão tenha sido inicialmente encerrado após três dias, a AMD reabriu a coleta de feedback em outubro e recebeu uma resposta positiva da comunidade Linux, com mais de mil comentários solicitando suporte para Ryzen AI.
Agora Em resposta a solicitações de desenvolvedores Comunidade Linux, a AMD lançou oficialmente o driver XDNA de código aberto para Linux.
Embora A AMD ainda não confirmou se os drivers relevantes serão mesclados com a linha principal, esta etapa representa um avanço significativo para usuários Linux que desejam aproveitar as vantagens dos recursos do Ryzen AI em seus sistemas. O lançamento do driver de código aberto demonstra o compromisso da AMD com a comunidade de desenvolvedores e sua disposição em responder às necessidades e solicitações dos usuários do Linux.
El conjunto de códigos publicados inclui:
- Amdxdna.ko – Um driver de baixo nível para o kernel Linux que interage diretamente com o hardware XDNA, permitindo comunicação e controle entre o sistema operacional e o NPU.
- Uma biblioteca de tempo de execução conhecida como plugin “xrt_plugin*-amdxdna”, projetada para aproveitar as vantagens da interface XRT (Xilinx Runtime Library). Esta biblioteca fornece uma interface que permite que aplicativos interajam com NPUs usando a biblioteca Xilinx runtime (XRT) e acessem e usem kernels em execução no acelerador de hardware de forma eficiente.
A vantagem do XRT reside na sua capacidade de fornecer múltiplos níveis de abstração, facilitando o desenvolvimento de aplicações em diversas linguagens de programação. Desde APIs de baixo nível para C/C++ até vinculações de alto nível para Python, bem como componentes integrados para trabalhar com estruturas populares de aprendizado de máquina, como TensorFlow, PyTorch e Caffe.
Em relação ao driver, é mencionado que ele requer a execução de aplicativos de IA:
- Processador:
- Para executar aplicativos de IA (máquina de teste): Processador RyzenAI, exemplo: Phoenix/Strix
- Qualquer processador x86 para construir o repositório (processador AMD é recomendado, se possível)
- Sistema operacional: Ubuntu 22.04
- Kernel Linux: você deve ter o IOMMO SVA (Shared Virtual Addressing) compatível com a versão 6.7 habilitado.
- Pacote básico XRT instalado
- Para garantir que o pacote base XRT funcione com o pacote de plugins, é melhor compilá-lo a partir do submódulo xrt neste repositório (/xrt)
Para os interessado no código do controlador, você deve saber que está escrito em C e C++ e foi lançado sob a licença GPLv2, o que significa que é de código aberto e permite que a comunidade de desenvolvedores acesse, modifique e distribua o software de acordo com os termos da licença. .
finalmente se você está interessado em saber mais sobre o assunto, além de seguir as instruções detalhadas para a compilação do Kernel, convido você a consultar no link a seguir.