La empresa inglesa Arm ha estado avanzando detalles de su arquitectura ARMv9, la muy necesaria evolución de ARMv8 la cual ya iba por la década de existencia. Mucho ha evolucionado el sector de la computación en estos años, gravitando hacia la inteligencia artificial y haciendo necesario novedades en el conjunto de instrucciones base de la arquitectura ARM para modernizarse. Al final se ha ido adaptando con extensiones —p. ej. SVE2—, pero no es lo mismo. Ahora la compañía ha anunciado tres nuevos tipos de núcleos para las próximas generaciones de sistemas en chip, con la novedad de que es tanto para móviles como comptadoras.

La realidad es que la arquitectura ARM está más preparada para ofrecer un alto rendimiento a un consumo comparativamente inferior a la arquitectura x86, y se ha abierto mucho hueco en el sector de los centros de datos. ARMv9 trae novedades en la virtualización y la seguridad, pero en el diseño de los propios núcleos hay cambios sustanciales para mejorar rendimiento y escalabilidad.

cpu_6.png

Hace unos días me preguntaban sobre si no había alternativa a los Cortex-A55 de bajo consumo, y no la había hasta la presentación del Cortex-A510. Este tipo de núcleo menor o de bajo consumo dentro de la arquitectura big.LITTLE tiene una mejora del 35 % del rendimiento frente al mencionado núcleo y mejora su potencia por vatio. Pero los cambios son más profundos y va a haber una divergencia en el alto rendimiento.

Por un lado está la serie X, con el nuevo núcleo Cortex-X2 y la serie A700 con el modelo Cortex-A710. La primera serie está orientada al alto rendimiento sin importar tanto el consumo mientras que la segunda equilibra potencia y consumo. Arm ha indicado que ambas series van a diverger cada vez más en esa nueva versión big.LITTLE con DynamIQ, una evolución de big.LITTLE iniciada hace casi un lustro con una mayor orientación a la inteligencia artificial y que va a culminar con ARMv9. Es un diseño más heterogéneo que permite mezclar los núcleos de nuevas formas, con clústeres de núcleos también heterogéneos. En ambos casos, estos nuevos núcleos aportan un 10-16 % de mejora de rendimiento pero duplica en procesamiento de redes neuronales frente a sus predecesores.

Los cambios en todos ellos son diversos y afectan tanto al tamaño de la caché como a la ejecución especulativa, carga-guardado de instrucciones o al número de instrucciones decodificadas por ciclo de reloj. No deja casi nada sin tocar, aunque no son cambios excesivamente profundos para una primera generación de estos procesadores de arquitectura ARMv9. En realidad el mayor cambio seguirá estando en el conjunto de instrucciones y esas mejoras que he mencionado de seguridad, virtualización e inteligencia artificial.

cpu_47.png

Los cambios en la arquitectura y escalabilidad precisa de un nuevo bloque para gestionar la información entre núcleos y otros elementos del chip y por eso también se ha anunciado la DSU-113 (unidad compartida DynamIQ). Habilita cachés más grandes (hasta 16 MB de N3), gestiona mejor la carga y frecuencias, y podría conectar hasta ocho núcleos X2 en un solo chip. Es lo que se necesitará para esos procesadores ARM orientados al sector PC si se quiere competir mejor con Apple y las tradicionales Intel y AMD.

En el otro lado está el CI-700, el bloque de interconexión coherente entre los núcleos y la caché del sistema. También se ha anunciado el NI-700, que es la interconexión con otros elementos externos a los núcleos, como periféricos, GPU, conectividad 5G, etc. La idea de ambos es que sean totalmente escalables, que es lo habitual, aunque con la arquitectura big.LITTLE con DynamIQ es más necesario todavía, pero en este caso con una topología que puede ser de malla y que permite hasta ocho clústeres de núcleos y hasta ocho controladores de memoria con posibilidad de usar una memoria SLC como amplificador de ancho de banda con la comunicación con la GPU.

Los primeros procesadores ARMv9 que hagan uso de estos núcleos no llegarán hasta 2022.

intro_9.jpg

Vía: AnandTech.