Neural Engine é um chip neural (NPU) especializado em tarefas de inteligência artificial, como o processamento de redes neurais. A Apple utiliza esse componente para melhorar o desempenho de iPhones, iPads e Macs.
Como funciona o Neural Engine da Apple?
O Neural Engine funciona como uma Unidade de Processamento Neural (NPU) dentro de um chip da Apple. Ele se dedica às operações de inteligência artificial e aprendizado de máquina, o que alivia a carga na CPU, na GPU e em outros tipos de processadores do SoC.
A arquitetura do Neural Engine é proprietária e não é detalhada publicamente pela Apple. No entanto, assim como outras NPUs, o Neural Engine traz instruções otimizadas para cálculo de operações matemáticas usadas em IA, como as multiplicações de matrizes e as convoluções.
O Apple A11 Bionic, primeiro chip da Apple equipado com o Neural Engine, era capaz de calcular 600 bilhões de operações por segundo com seus 2 núcleos. Já o Apple M2 Ultra, lançado em 2023, tinha um Neural Engine de 32 núcleos capaz de processar 31,6 trilhões de operações por segundo.
A arquitetura da NPU é mais especializada, portanto, pode executar mais instruções em menos tempo ou consumindo menos energia que uma CPU. Essa característica melhora a velocidade do reconhecimento de objetos no aplicativo Fotos do iPhone e a duração de bateria dos MacBooks, por exemplo.
Quais tarefas são processadas pelo Neural Engine?
- Face ID: é o sistema de reconhecimento facial da Apple, que usa o Neural Engine para processar os dados biométricos em tempo real e aprender as mudanças sutis do rosto do usuário ao longo do tempo. Os dados são armazenados de forma segura no Secure Enclave, outro componente do SoC da Apple;
- Processamento de linguagem natural (NLP): usado para entender e responder aos comandos de voz do usuário por meio da Siri, além de compreender a linguagem natural por meio do recurso Ditado do iOS, entre outras funções;
- Realidade aumentada: o Neural Engine processa e interpreta dados de sensores e câmeras em tempo real, diminuindo a latência, identificando objetos do mundo real e dividindo a carga com outros processadores do SoC, como a CPU e a GPU;
- Reconhecimento de pessoas: é o que permite a busca por pessoas no aplicativo Fotos, que analisa localmente as fotos capturadas pelo iPhone por meio do Neural Engine, sem precisar enviar os dados para a nuvem;
- Reconhecimento de objetos: no Modo de Detecção do aplicativo Lupa, pode detectar portas, identificar pessoas no campo de visão da câmera e fazer descrições ao vivo dos arredores para pessoas com deficiência visual.
Quando o Neural Engine foi lançado?
O Neural Engine foi lançado em setembro de 2017 como parte integrante do Apple A11 Bionic, SoC baseado em arquitetura Arm que equipava o iPhone 8 e o iPhone X. A primeira versão do Neural Engine tinha 2 núcleos e era capaz de executar 600 bilhões de operações por segundo.
A NPU da Apple foi incluída em SoCs posteriores, com evoluções tanto no número de núcleos quanto na capacidade bruta. O Neural Engine do Apple A13 Bionic, de 2020, tinha 8 núcleos e processamento de 6 trilhões de operações por segundo (TOPS). Já o Apple A16 Bionic, de 2022, tinha um Neural Engine de 16 núcleos e 17 TOPS.
Qual é a diferença entre Neural Engine e CPU?
Neural Engine é um processador especializado em tarefas de IA, enquanto CPU é um processador de propósito geral que pode executar diversos tipos de tarefas.
Tanto o Neural Engine quanto a CPU estão dentro do SoC (system-on-a-chip), como o Apple Silicon, mas as instruções especializadas são direcionadas a diferentes tipos de processadores, o que libera a CPU para outras tarefas. Uma CPU também é capaz de executar operações de IA, mas de forma menos eficiente.