Glosario IA
El diccionario completo de la Inteligencia Artificial
TVM (Tensor Virtual Machine)
Un framework de compilación de código abierto diseñado para optimizar y ejecutar tensores en diversas arquitecturas de hardware, reduciendo el nivel de abstracción de los modelos de aprendizaje profundo.
Just-In-Time (JIT) Compilation
Técnica de compilación que traduce el bytecode o código intermedio a código máquina nativo en tiempo de ejecución, permitiendo optimizaciones basadas en el estado real del sistema.
Ahead-of-Time (AOT) Compilation
Proceso de compilación del código fuente a código máquina nativo antes de la ejecución, reduciendo la latencia de inicio y permitiendo optimizaciones agresivas independientes del entorno de ejecución.
Graph IR (Intermediate Representation)
Representación abstracta del gráfico de cálculo de un modelo de IA, utilizada por los compiladores para analizar dependencias y aplicar transformaciones de optimización antes de la generación de código.
Operator Fusion
Técnica de optimización que combina múltiples operaciones elementales del gráfico de cálculo en un único núcleo de cálculo, reduciendo la sobrecarga de memoria y mejorando la localidad de datos.
Auto-scheduling
Proceso automatizado de búsqueda de la mejor configuración de ejecución (tiling, vectorización, paralelización) para un núcleo de cálculo en una arquitectura de hardware objetivo dada.
Target-specific Optimization
Conjunto de técnicas de compilación que adaptan el código generado a las características únicas de una arquitectura de hardware (CPU, GPU, TPU, ASIC) para maximizar el rendimiento.
Relay IR
Representación intermedia funcional de alto nivel en TVM, que soporta gráficos de cálculo con flujo de control y permite optimizaciones semánticas complejas.
Tensor Expression (TE)
Lenguaje específico de dominio en TVM para describir cálculos sobre tensores a un alto nivel de abstracción, facilitando la generación automática de código optimizado para diversos objetivos.
Kernel Auto-tuning
Proceso de exploración sistemática del espacio de parámetros de optimización de un núcleo de cálculo para identificar la configuración que ofrece el mejor rendimiento en un hardware específico.
HLO (High-Level Optimizer) IR
Representación intermedia utilizada por XLA, que describe los cálculos en forma de operaciones sobre tensores de alto nivel, optimizada antes de la generación de código para los aceleradores.
Codegen (Code Generation)
Fase final de la compilación donde la representación intermedia optimizada se traduce en código máquina ejecutable para la arquitectura objetivo específica.
Polyhedral Model
Modelo matemático utilizado para representar y transformar bucles anidados, permitiendo optimizaciones complejas como el tiling y la paralelización automática.
LLVM (Low Level Virtual Machine)
Infraestructura de compilación modular utilizada por muchos compiladores de IA para generar código máquina optimizado para diferentes arquitecturas de CPU.
Memory Layout Optimization
Técnica de reorganización de datos en memoria para mejorar la localidad espacial y temporal, reduciendo las latencias de acceso y aumentando el rendimiento de cálculo.
Hardware Abstraction Layer (HAL)
Interfaz de software que oculta los detalles específicos del hardware subyacente, permitiendo a los compiladores generar código portable mientras aprovecha las optimizaciones nativas.
Vectorización
Técnica de optimización que transforma operaciones escalares en operaciones vectoriales (SIMD), aprovechando las unidades de cálculo paralelo de los procesadores modernos.
Tiling
Estrategia de particionamiento de datos en bloques (tiles) para mejorar la reutilización de la caché y la eficiencia de la paralelización en cálculos con tensores.
Reescritura de Grafos
Transformación sistemática del grafo de cálculo aplicando reglas de reescritura para reemplazar subgrafos por equivalentes de mayor rendimiento.