Hardware

AMD e Intel preparan ACE v2 y AVX10.3 para acelerar la IA en futuras CPU x86

AMD e Intel preparan ACE v2 y AVX10.3 para acelerar la IA en futuras CPU x86

AMD e Intel han publicado las especificaciones de AI Compute Extensions v2 (ACE v2) y AVX10.3, dos ampliaciones del conjunto de instrucciones x86 destinadas a mejorar el procesamiento de inteligencia artificial y las operaciones vectoriales. Los documentos introducen nuevos formatos de datos de 4 bits, amplían las capacidades de cálculo matricial y añaden instrucciones de conversión entre diferentes precisiones.

El trabajo procede del x86 Ecosystem Advisory Group, impulsado por ambas compañías para coordinar la evolución de la arquitectura. Aunque ya se han presentado parches para incorporar estas instrucciones al compilador GCC, todavía no existen procesadores comerciales compatibles con ACE v2 o AVX10.3, ni se ha confirmado qué generaciones incorporarán estas capacidades.

ACE v2 incorpora operaciones matriciales con formatos de 4 y 8 bits

La principal evolución de ACE v2 se encuentra en el soporte de formatos numéricos de precisión reducida, especialmente relevantes para ejecutar modelos de inteligencia artificial. La especificación amplía las operaciones con datos de 8 bits e introduce nuevas posibilidades para trabajar con representaciones de 4 bits, incluyendo formatos enteros y de coma flotante.

El interés de estas operaciones está relacionado con la reducción del volumen de memoria necesario para almacenar y procesar determinados modelos. En condiciones equivalentes, una representación de 4 bits ocupa la mitad que otra de 8 bits, aunque el ahorro real depende de factores como el escalado, los metadatos y la organización de los datos.

Estas representaciones resultan especialmente útiles en inferencia de IA, donde determinados modelos pueden utilizar técnicas de cuantización para reducir sus requisitos de memoria. Sin embargo, disminuir la precisión también puede introducir errores numéricos, por lo que las ventajas dependen de la tolerancia de cada aplicación y del método de cuantización empleado.

La especificación también contempla operaciones matriciales con FP16, FP32 y FP64, ampliando su alcance más allá de los cálculos de precisión reducida. Esto permite definir instrucciones para cargas científicas y técnicas con requisitos numéricos diferentes, aunque las prestaciones finales dependerán de cómo cada fabricante implemente las unidades de ejecución correspondientes.

AVX10.3 amplía las conversiones entre FP8, BF16 e INT4

Mientras ACE v2 se centra principalmente en el procesamiento matricial, AVX10.3 introduce mejoras en las operaciones vectoriales de propósito general. Entre sus novedades aparecen instrucciones para convertir datos entre FP8 y BF16, además de transformaciones desde FP16 o BF16 hacia formatos INT4.

Estas conversiones tienen importancia porque los modelos de IA no siempre utilizan la misma precisión durante todas las fases de ejecución. Los pesos pueden almacenarse en formatos compactos, mientras que determinados cálculos intermedios requieren una precisión superior para mantener resultados numéricamente aceptables.

Disponer de instrucciones específicas permite reducir la dependencia de secuencias más largas de operaciones para transformar los datos. No obstante, una conversión implementada directamente en hardware no garantiza automáticamente una mejora importante: también influyen la velocidad de ejecución, el movimiento de datos y la frecuencia con la que una aplicación necesita realizarla.

La documentación incluye asimismo operaciones de reorganización de datos y multiplicación de matrices de bits, aunque determinadas capacidades se identifican como extensiones opcionales. Esta distinción será fundamental cuando aparezcan procesadores compatibles, puesto que implementar una versión de AVX10.3 no implica necesariamente incorporar todas las funciones adicionales contempladas.

Intel prepara el soporte en GCC antes de que exista hardware compatible

La publicación de las especificaciones ha venido acompañada de dos series de parches enviados por ingenieros de Intel al proyecto GCC, una dedicada a ACE v2 y otra a AVX10.3. El objetivo es que el compilador pueda reconocer las nuevas capacidades y generar instrucciones compatibles cuando el hardware esté disponible.

Las modificaciones incluyen detección de características del procesador mediante CPUID, nuevas opciones de compilación, funciones intrínsecas y pruebas de funcionamiento. En el caso de AVX10.3, los cambios también establecen su relación con AVX10.2 y las instrucciones auxiliares correspondientes.

Sin embargo, los parches se encuentran en fase de revisión y todavía no equivalen a soporte incorporado en una versión estable de GCC. Además, aunque el compilador llegara a admitir estas instrucciones, los programas necesitarían ejecutarse sobre procesadores compatibles para aprovecharlas.

Los desarrolladores también deberán contemplar rutas de ejecución alternativas para CPU que carezcan de estas extensiones. Esta compatibilidad resulta esencial para evitar que aplicaciones compiladas con instrucciones nuevas intenten ejecutarlas sobre hardware anterior, donde provocarían errores de instrucción no válida.

La colaboración entre AMD e Intel también alcanza al software de inteligencia artificial. Ambas compañías trabajan para unificar sus optimizaciones de CPU para PyTorch mediante oneDNN, facilitando que las futuras capacidades x86 puedan integrarse en bibliotecas compartidas sin obligar a mantener implementaciones completamente independientes.

Los primeros procesadores compatibles podrían llegar entre 2028 y 2029

Por ahora, AMD e Intel no han confirmado ningún procesador comercial con ACE v2 o AVX10.3. De hecho, las primeras versiones de ACE y AVX10.2 tampoco estaban disponibles en procesadores comercializados cuando se publicaron los nuevos documentos, lo que refleja la distancia existente entre definir una arquitectura y llevarla al silicio.

Según la estimación de Phoronix, las primeras CPU con estas capacidades podrían aparecer entre 2028 y 2029. Se trata de una previsión basada en los plazos habituales de desarrollo, no de un calendario oficial, y tampoco permite determinar qué fabricante incorporará primero las nuevas instrucciones.

La disponibilidad del hardware será solo una parte del proceso. El rendimiento dependerá de la implementación de las unidades de ejecución, el ancho de banda de memoria y las optimizaciones del software, especialmente en aplicaciones que alternan operaciones matriciales, conversiones de precisión y procesamiento convencional.

Para los usuarios actuales, ACE v2 y AVX10.3 no representan una mejora que pueda activarse mediante una actualización de Windows, Linux o los controladores. Su utilidad inmediata se concentra en los desarrolladores de compiladores, bibliotecas matemáticas y frameworks de IA que necesitan preparar el software con antelación.

La principal relevancia de estas especificaciones es que AMD e Intel están definiendo capacidades comunes para la futura aceleración de IA mediante CPU x86. La publicación establece una base técnica compartida, pero todavía será necesario conocer las primeras implementaciones comerciales y sus benchmarks para determinar qué ventajas reales ofrecerán frente a las instrucciones actuales.

Vía: Guru3D

Sobre el autor