Glossário IA
O dicionário completo da Inteligência Artificial
TVM (Tensor Virtual Machine)
Um framework de compilação de código aberto projetado para otimizar e executar tensores em diversas arquiteturas de hardware, diminuindo o nível de abstração dos modelos de deep learning.
Compilação Just-In-Time (JIT)
Técnica de compilação que traduz bytecode ou código intermediário para código de máquina nativo no momento da execução, permitindo otimizações baseadas no estado real do sistema.
Compilação Ahead-of-Time (AOT)
Processo de compilação do código-fonte para código de máquina nativo antes da execução, reduzindo a latência de inicialização e permitindo otimizações agressivas independentes do ambiente de execução.
IR de Grafo (Representação Intermediária)
Representação abstrata do grafo de computação de um modelo de IA, utilizada por compiladores para analisar dependências e aplicar transformações de otimização antes da geração de código.
Fusão de Operadores
Técnica de otimização que combina várias operações elementares do grafo de computação em um único kernel de computação, reduzindo a sobrecarga de memória e melhorando a localidade dos dados.
Auto-agendamento
Processo automatizado de busca pela melhor configuração de execução (tiling, vetorização, paralelização) para um kernel de computação em uma dada arquitetura de hardware alvo.
Otimização Específica do Alvo
Conjunto de técnicas de compilação que adaptam o código gerado às características únicas de uma arquitetura de hardware (CPU, GPU, TPU, ASIC) para maximizar o desempenho.
Relay IR
Representação intermediária funcional de alto nível no TVM, suportando grafos de computação com fluxo de controle e permitindo otimizações semânticas complexas.
Expressão de Tensor (TE)
Linguagem específica de domínio em TVM para descrever cálculos em tensores em um alto nível de abstração, facilitando a geração automática de código otimizado para vários alvos.
Autoajuste de Kernel
Processo de exploração sistemática do espaço de parâmetros de otimização de um kernel de cálculo para identificar a configuração que oferece o melhor desempenho em um hardware específico.
HLO (High-Level Optimizer) IR
Representação intermediária usada por XLA, descrevendo cálculos como operações de tensor de alto nível, otimizada antes da geração de código para aceleradores.
Geração de Código (Codegen)
Fase final da compilação onde a representação intermediária otimizada é traduzida em código de máquina executável para a arquitetura alvo específica.
Modelo Poliédrico
Modelo matemático usado para representar e transformar laços aninhados, permitindo otimizações complexas como tiling e paralelização automática.
LLVM (Low Level Virtual Machine)
Infraestrutura de compilação modular usada por muitos compiladores de IA para gerar código de máquina otimizado para diferentes arquiteturas de CPU.
Otimização de Layout de Memória
Técnica de reorganização de dados na memória para melhorar a localidade espacial e temporal, reduzindo as latências de acesso e aumentando o throughput de cálculo.
Camada de Abstração de Hardware (HAL)
Interface de software que oculta os detalhes específicos do hardware subjacente, permitindo que os compiladores gerem código portátil enquanto exploram otimizações nativas.
Vetorização
Técnica de otimização que transforma operações escalares em operações vetoriais (SIMD), explorando as unidades de computação paralela dos processadores modernos.
Tiling
Estratégia de particionamento de dados em blocos (tiles) para melhorar a reutilização do cache e a eficiência da paralelização em cálculos sobre tensores.
Reescrita de Grafo
Transformação sistemática do grafo de cálculo aplicando regras de reescrita para substituir subgrafos por equivalentes mais performáticos.