A Intel continua a aprimorar seu driver de unidade de processamento neural (NPU) para lidar com cargas de trabalho de IA cada vez mais exigentes. Com a chegada da quinta geração de NPUs, que será apresentada na família Panther Lake, uma nova série de patches foi lançada, trazendo melhorias significativas para o driver Intel IVPU.
Entre as melhorias incluídas na atualização estão a remoção do suporte ao motor de cópia obsoleto, melhorias na performance da função open() através da alocação preguiçosa de tabelas de páginas MMU, correções no tratamento de erros e suporte para cargas de trabalho maiores, permitindo o processamento de modelos mais complexos.
Além disso, os patches incluem:
- Não falhar quando mais de um tile está fundido.
- Alocação adiada da tabela de páginas raiz do MMU.
- Limpeza da entrada CDTAB em caso de falha.
- Desmapeamento de BOs parcialmente mapeados em caso de erros.
- Utilização de
xa_alloc_cyclic()
em vez de função personalizada. - Alocação do ID da fila de comandos em XArray.
- Não alocar buffers de preempção quando o MIP está desabilitado.
- Adição de uma opção de depuração no Kconfig.
O principal destaque dessa atualização é a expansão dos endereços da unidade de processamento visual (VPU), permitindo maior flexibilidade e aumento da capacidade de execução de cargas de trabalho maiores. A Intel também aumentou o intervalo de endereços DMA, passando para 128 GB nos modelos 37xx, devido a limitações do MMU, e para 256 GB nas gerações mais recentes. Além disso, nos modelos 40xx e superiores, agora é possível acessar todo o espaço de 256 GB tanto da memória DMA quanto do firmware.
Essas mudanças também incluem a união dos intervalos de usuário e DMA nos modelos 40xx, garantindo maior eficiência e desempenho. Outra melhoria importante foi o aumento do intervalo de endereços de usuário no modelo 37xx, passando de 255 MB para 511 MB, permitindo o carregamento de modelos muito grandes. O hardware do Intel NPU 37xx é utilizado nos SoCs Meteor Lake.
Para otimizar a utilização dos recursos de preempção, outro patch move a alocação do buffer secundário de preempção para o intervalo DMA, aumentando a capacidade de alocação de filas de comandos com buffers de preempção sem esgotar o intervalo de endereços.
Com essas mudanças no driver IVPU, a Intel busca garantir que sua NPU possa executar modelos de IA cada vez mais exigentes, trazendo um impacto positivo para o desenvolvimento de soluções de IA mais robustas e eficientes.
Fique atento para mais novidades sobre quando essas melhorias do driver Intel NPU serão integradas ao kernel principal do Linux.