Intel implementa APX y AVX10 en Linux para preparar la llegada de las CPU Granite Rapids
Intel pretende dar el sorpaso a AMD en este 2024 dentro del sector de los servidores. Para ello prepara un combo difícil de igualar por parte de los rojos, sobre todo en lo que respecta a la IA, puesto que no solo llegarán con un nodo litográfico más avanzado, sino que sus procesadores Granite Rapids tendrán APX y AVX10. Por ello, y adelantándose para que los desarrolladores puedan compilar de nuevo sus programas y Linux tenga tiempo de trabajar con sus respectivas distribuciones, Intel ha habilitado los binarios para las extensiones APX y AVX10 en Clear Linux, ¿están más cerca de lo que creemos las nuevas CPU?
Hay varios pasos previos a la llegada, pero sin duda, este es el primer paso claro, clarísimo más bien, de que Intel lo tiene todo listo en cuanto al hardware. Por ello, y con el objetivo de poder aprovechar estas instrucciones y sus conjuntos desde el minuto cero, ya pone a disposición de cualquiera los archivos binarios compilados.
Intel va a destrozar los registros con APX y AVX10, Clear Linux es el primer paso
Las distribuciones de Linux harán lo propio en breve, así que es normal que Intel se lance a por Clear Linux sabiendo que es su caballo de batalla dentro del SO de código abierto. El objetivo de Intel es complementar los niveles de optimización necesarios para x86 o x64 en sus respectivas versiones.
Según ha confirmado la compañía mediante el anuncio, esperan poder optimizar versiones de APX+AVX10 con GNU C Library y Python con vistas puestas al compilador GCC 14:
Este es un aviso de que hemos comenzado a agregar software compilado APX + AVX10 a Clear Linux, que debería comenzar a aparecer en los lanzamientos de esta semana. Esto se suma, por supuesto, a nuestra línea base x86-64-v2 y a las compilaciones v3 y v4.
Inicialmente nos estamos centrando en los componentes básicos del sistema (glibc, etc.) y el universo Python, pero vamos a expandir esto a toda la distribución durante las próximas semanas y meses a medida que nuestras herramientas y el compilador GCC 14 maduren.Como de costumbre, el actualizador swupd elegirá automáticamente el mejor binario para su sistema si hay varias opciones disponibles según las capacidades de la CPU que tenga.
Para mayor claridad, una descripción general de lo que ofrecemos
-
x86-64-v2 (SSE4.2) | 2011 | Todos los componentes lo proporcionan en estos momentos.
-
x86-64-v3 (AVX2) | 2014 | La gran mayoría de componentes lo proporcionan ya.
-
x86-64-v4 (AVX512) | 2016 | Los componentes seleccionados (math heavy) lo proporcionan.
-
APX + AVX10 | Futuro | Lanzamiento incremental durante los próximos meses.
¿Por qué esto es tan importante y relevante?
Porque ambas instrucciones son lo más revolucionario desde que se introdujeron las AVX como tal. Un servidor ha llegado a leer a ciertos ingenieros que supone el paso más grande desde x64, de hecho, algunos hablan de que x64 como tal va a morir para dar paso a APX, siendo esta el futuro de Intel.
De hecho, supone importantes cambios de arquitectura en las CPU Granite Rapids. Por ejemplo, Intel afirma que Advanced Performance Extensions (APX) amplía todo el conjunto de instrucciones x86 y les da acceso a más registros con mejoras de rendimiento.
Para ello, los GPR (General Propose Register) se duplican, es decir, se pasa de 16 a 32. Como era de esperar, el compilador podrá tener más valores en ellos, lo que permite que el código del mismo tenga un 10% menos de carga y se consiga un 20% menos de almacenamiento. Por lo tanto, los registros son más rápidos y además consumen menos energía, reduciendo el consumo de cada CPU.
AVX10 llegará a los P-Core y E-Core, pero con limitaciones para 512 bits en los segundos
AVX10 (Advanced Vector Extensions 10) es la primera ISA vectorial de Intel desde AVX512 (hace ya 11 años de eso). Lo más relevante es que "democratiza" las instrucciones vectoriales para todas las nuevas CPU y no excluye a ningún tipo de Core. Es decir, tanto los P-Core como los E-Core tendrán soporte desde el minuto cero y al basarse en las comentadas AVX512, permitirá a las CPU Granite Rapids / Sierra Forest longitudes de instrucciones desde 128 hasta 512 bits.
Otros añadidos para hacernos una idea del potencial son la codificación EVEX, 32 registros vectoriales y 8 registros más para máscaras dentro de AVX10/256. La única pega es que AVX10/512 solo estará disponible para los P-Core, lo que deja fuera de esta longitud a Sierra Forest como arquitectura, por ejemplo, donde solo portará AVX10/256, aunque sí integrará VMX.
Por tanto, que Intel haya dado el primer paso con Clear Linux para introducir APX y AVX10 es un claro síntoma que tanto Granite Rapids como Sierra Forest están mucho más cerca de lo que se intuía al principio, que no era otra fecha que finales de este 2024. ¿Podrían llegar justamente pasada la primera mitad del año?