CPU
Uma CPU é o processador de uso geral de um computador. Em IA, ela carrega e prepara dados, coordena aceleradores e executa inferência quando não há uma GPU disponível.
Uma unidade central de processamento (CPU) é o processador de uso geral que executa o sistema operacional e os programas de um computador. Ela executa instruções em um pequeno número de núcleos potentes, cada um projetado para concluir rapidamente um fluxo de instruções, com caches grandes, previsão de desvios e execução fora de ordem que mantêm rápido o código complexo com ramificações. Em sistemas de inteligência artificial (IA), a CPU carrega e decodifica dados, aplica aumento de dados, alimenta GPUs e outros aceleradores e executa as etapas ao redor de um modelo, como redimensionar imagens antes da inferência e aplicar supressão não máxima após a detecção de objetos. Ela também executa o próprio modelo quando não há um acelerador ou quando ele não compensa, de laptops e funções na nuvem a um Raspberry Pi, o que torna a latência de inferência na CPU um objetivo importante de projeto para modelos de IA de borda.
Como as CPUs executam redes neurais#
Uma rede neural passa a maior parte do tempo multiplicando matrizes, e as CPUs aceleram esse processo de três maneiras. Vários núcleos, de 4 em uma placa pequena a mais de 100 em um chip de servidor, trabalham em paralelo em diferentes partes de um lote ou camada. Dentro de cada núcleo, as unidades SIMD (instrução única, vários dados) aplicam uma instrução a muitos números ao mesmo tempo: AVX2 e AVX-512 em chips x86 da Intel e AMD, e NEON em chips Arm, como os encontrados em celulares, Macs com Apple silicon e placas Raspberry Pi, além da extensão SVE, mais ampla, nos chips Arm mais recentes para servidores. Os chips recentes adicionam unidades matriciais, como as Advanced Matrix Extensions (AMX) da Intel nos processadores Xeon para servidores desde 2023 e a Scalable Matrix Extension (SME) da Arm, que multiplicam pequenos blocos de valores BF16 ou INT8 por instrução.
O throughput da CPU ainda fica muito abaixo do de uma GPU, pois a CPU dedica a área do chip a caches e à lógica de controle para obter alto desempenho em uma única thread, em vez de milhares de unidades aritméticas, e lê os pesos da memória comum do sistema, cuja largura de banda é uma fração da memória de uma GPU. Os mecanismos de inferência reduzem parte dessa diferença: o ONNX Runtime, o OpenVINO da Intel e o NCNN da Tencent fundem camadas, escolhem os kernels mais rápidos para o conjunto de instruções disponível e executam modelos quantizados em INT8, que movimentam um quarto dos dados usados por pesos FP32. A escolha de um mecanismo e de uma precisão para implantação em CPU geralmente depende do hardware:
A Ultralytics projetou o YOLO26 para esse tipo de hardware, e o YOLO26n é até 43% mais rápido que o YOLO11n na inferência ONNX em CPU em uma CPU Intel Xeon, enquanto a exportação para OpenVINO acelera a inferência em CPU em até 3 vezes. Este código executa o YOLO26 na CPU, depois o exporta para OpenVINO e executa o modelo exportado:
from ultralytics import YOLO
# Executa o menor modelo de detecção YOLO26 na CPU, mesmo que haja uma GPU disponível
model = YOLO("yolo26n.pt")
results = model.predict("https://ultralytics.com/images/bus.jpg", device="cpu")
print(results[0].speed) # milissegundos para pré-processamento, inferência e pós-processamento
# Exporta para o formato do OpenVINO e executa o modelo exportado na mesma CPU
path = model.export(format="openvino")
ov_model = YOLO(path)
results = ov_model.predict("https://ultralytics.com/images/bus.jpg", device="cpu")
print(results[0].speed)Cada dicionário speed divide o tempo de uma imagem em pré-processamento, inferência e pós-processamento. Assim, as duas saídas impressas comparam os tempos de inferência do PyTorch e do OpenVINO na máquina que executa o código.
CPU vs. GPU vs. TPU vs. NPU#
- CPU: Alguns núcleos potentes para código de uso geral com ramificações. Todo computador tem uma, e ela executa qualquer modelo sem hardware adicional, mas com throughput inferior ao dos aceleradores abaixo.
- GPU: Milhares de núcleos mais simples, além de Tensor Cores para operações matriciais e memória de alta largura de banda. As GPUs são o hardware padrão para treinamento e inferência de alto throughput.
- TPU: Chip especializado do Google, projetado em torno de grandes unidades de multiplicação de matrizes, disponível no Google Cloud e, como Edge TPU, em pequenos módulos de inferência.
- NPU: Acelerador de redes neurais de baixo consumo integrado a chips de celulares, laptops e dispositivos embarcados. Os chips Intel Core Ultra, AMD Ryzen AI, Qualcomm Snapdragon e Apple da série M combinam núcleos de CPU, uma GPU e uma NPU em um único processador.
Aplicações no mundo real#
- Pipelines de dados de treinamento: Enquanto uma GPU treina, processos de trabalho da CPU leem imagens do disco, decodificam-nas, redimensionam-nas e aplicam aumento de dados, além de montar lotes. Poucos núcleos de CPU deixam uma GPU cara à espera de dados.
- Câmeras inteligentes e dispositivos de borda: Campainhas, sensores de varejo e câmeras industriais executam pequenos modelos de detecção em seus próprios processadores. Assim, o vídeo permanece no dispositivo e somente os alertas são enviados para fora.
- Inferência sem servidor e na nuvem: Funções na nuvem e endpoints com pouco tráfego costumam ser executados em instâncias que usam apenas CPU, iniciam rapidamente e custam menos do que reservar uma GPU.
- Modelos de linguagem grandes locais: Projetos como o llama.cpp executam modelos GGUF quantizados em CPUs de laptops, onde a velocidade de geração depende principalmente da rapidez com que a memória entrega os pesos de cada token.










