NPU Intel

Intel atualiza driver de NPU para suportar cargas de trabalho maiores

A Intel atualizou seu driver de NPU com suporte para cargas de trabalho maiores e melhorias de performance. As mudanças incluem aumento do intervalo de endereço DMA e otimização do uso de buffers de preempção.

Logotipo da Intel em prata sobre um fundo escuro com textura de couro, destacando uma versão elegante e moderna da marca.

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.

Acesse a versão completa
Sair da versão mobile