¿Qué es Ryzen AI y por qué marcará un antés y un después en las CPU de AMD?
Bajo el nombre de Ryzen AI se encuentra un ecosistema de software y hardware para dar la capacidad a las CPU AMD Ryzen de poder ejecutar sin problemas de consumo y rendimiento una serie de funciones básicas relacionadas con la inteligencia artificial y otros campos. ¿La clave? Ser la primera NPU XDNA integrada por AMD en sus chips. ¿Cuáles son sus secretos y cómo es su funcionamiento?
La empresa de Lisa Su no ha sido creyente en la inteligencia artificial hasta hace poco, pero no por desgana, sino por su galería de recursos y procesos. Más bien fue la compra de Xilinx lo que les ha dado acceso a una serie de tecnologías que definirán parte de su estrategia en inteligencia artificial, siendo una parte Ryzen AI. No obstante, su implementación traerá ventajas más allá de la comentada IA.
AMD dice no a las instrucciones AMX y sí a su propia NPU
Una de las novedades incluidas en los núcleos Golden Cove, correspondientes a los P-Cores en Intel Core 12 y Sapphire Rapids, son las unidades AMX. Estas unidades no son más que arrays sistólicos para el cálculo de matrices aritméticas. Se trata de una operación matemática muy utilizada en los algoritmos de aprendizaje profundo y aprendizaje automático. La ventaja de estas unidades es que pueden hacer dichos cálculos en menos ciclos de reloj y, por tanto, bajo un tiempo fijo hacer una mayor cantidad de cálculos de ese tipo.
Sin embargo, la empresa de Lisa Su ha optado por otro camino y tiene que ver con la compra de Xilinx. Se trata de lo que coloquialmente llamamos una NPU, la cual no deja de ser un array sistólico, pero usado en forma de coprocesador, es decir, no forma parte de la CPU o una GPU como una unidad de ejecución, sino que tiene su propia unidad de control y, por tanto, su propio sistema de captación y decodificación de instrucciones. Las unidades de proceso neuronales llevan años siendo empleadas en dispositivos móviles y han permitido una serie de aplicaciones y funciones de las mismas que antes eran imposibles.
Pues bien, AMD a partir de los Ryzen 7x40 para portátiles ha decidido añadir las unidades XDNA que permiten el uso de Ryzen AI, por lo que en este caso estamos hablando de dos puntos diferenciados. Por un lado, una serie de funciones que pueden utilizar las aplicaciones y que se añadirán en el ámbito del sistema operativo, y, por el otro lado, el hardware en sí mismo que es el que hace posible dichas funciones.
¿Qué es Ryzen AI?
Aunque por el nombre pueda parecer que hace referencia al software, Ryzen AI son una serie de librerías que hacen utilización de las unidades XDNA en ciertos procesadores de la familia AMD Ryzen para hacer posible algunos servicios en Windows 11. En otras palabras, aplicaciones que no son relacionadas con el usuario, pero que son subcontratadas por las aplicaciones de empleo diario.
Por el momento, las funciones son limitadas y hasta finales de 2023 no será posible hacer uso de las capacidades de las unidades XDNA, desde el momento en que el SDK no saldrá hasta esa fecha, por lo que sus capacidades están muy limitadas. Solo se pueden hacer tres cosas, las cuales tienen que ver con el uso de la cámara web en un portátil: auto encuadre, corrección de la posición de los ojos y sustitución de fondos.
Aunque estas no serán las únicas cosas que podrá hacer, ya que, lo más seguro es que se añadan elementos adicionales como es la eliminación de ruido a través de IA, ideal en entornos corporativos y una de las cosas que menos potencia requiere. En general, la idea de AMD es llevar a Ryzen AI a todas sus gamas de productos y la NPU XDNA en todas ellas no será igual de potente. Por lo tanto, habrá en un futuro funciones específicas que requerirán el empleo de CPU, APU e incluso GPU más avanzadas que los actuales Ryzen 7x40, los cuales no tienen una potencia superior a 10 TOPS, lo que limita mucho los algoritmos que se pueden hacer.
¿Cuáles son sus capacidades técnicas?
No debemos comparar su capacidad con la de una tarjeta gráfica de alto calibre, sino más bien con las capacidades de los chips de móvil. En todo caso, la implementación actual no es más que un despliegue experimental, no es una versión definitiva y esto se tiene que tener en cuenta, ya que su gran ventaja es que se va a poder programar bajo C++ estándar y no bajo un lenguaje propietario como ocurre con CUDA de NVIDIA.
En realidad, la ventaja de Ryzen AI en combinación con las unidades XDNA no es la potencia en bruto, ya que ejecutar dichos algoritmos en una GPU puede darte mejores resultados, pero una vez tenemos en cuenta dos puntos importantes la situación ya cambia por completo. Para empezar, puede hacer el trabajo consumiendo una fracción de lo que consumiría la GPU integrada para ello, en segundo lugar, nos permite usar CPU y GPU para otras tareas. Por lo que, pese a su limitada potencia, por el momento, no se puede decir que no tenga su utilidad.
En todo caso, no esperéis que tenga la potencia suficiente como para poder hacer cosas como los cálculos del FSR a gran velocidad, eso seguirá dependiendo de la tarjeta gráfica. Sin embargo, va a reemplazar (o más bien a eliminar) ciertos componentes de una placa base, a medida que AMD utilice Ryzen AI e incorpore sus capacidades en el sistema.
XDNA, la parte de hardware de Ryzen AI
Llegamos a la parte del hardware, XDNA es lo que hará posible la implementación de Ryzen AI en los diferentes chips de AMD, aunque vendrá en dos formatos diferenciados:
- En forma de FPGA empotrado, el cual se podrá configurar para otras tareas si es del agrado del fabricante del sistema.
- Basándose en las unidades AIE y AIE-ML de Xilinx, como es el caso de los Ryzen 7x40 y de futuros chips de la marca.
A esto desde AMD lo han llamado “Adaptative Architecture” y se basa en el uso de la tecnología que han obtenido del porfolio de Xilinx tras su compra y han decidido añadir a sus propios productos tan rápido como ha sido posible. Si bien esta empresa se ha especializado en los llamados Field Programmable Array, dudamos mucho que los veamos dentro de una CPU, APU o GPU de la marca, pero sí los AIE y AIE-ML, que no son más que arrays sistólicos. Ahora bien, hemos de entender que significa este término para comprender mejor cómo funcionan estos coprocesadores.
¿Arrays sistólicos?
Un array sistólico es una matriz de unidades de procesamiento, a veces núcleos completos, con la particularidad de que “bombean” los datos y las instrucciones hacia las unidades colindantes, por los que están conectados a los registros. En la definición más básica son los que se encuentran en la periferia de la matriz, aunque es posible, en algunos diseños, que cada una de las unidades tengan su propia memoria local.
Lo importante en este caso es su funcionamiento, y obviamente, cuanto más complejo en unidades sea un array sistólico, como lo son las unidades XDNA en Ryzen AI, más complejo será el algoritmo que se podrá ejecutar.
Una utilidad más allá de la Inteligencia Artificial
Su utilidad, por cierto, no se limita únicamente al mundo de la Inteligencia Artificial, sino que también es clave en otros mundos como el procesamiento de señales. Es más, todas las aplicaciones que ha mostrado AMD en Ryzen AI corresponden más a la de un DSP avanzado que no algoritmos de aprendizaje automático y aprendizaje profundo. Por otro lado, otra capacidad es el del cifrado y descifrado de claves criptográficas, e incluso el poder ejecutar algoritmos de compresión y descompresión de datos a tiempo real, lo cual es sumamente útil, en especial de cara a volcar datos desde un SSD a la RAM.
Es más, tenemos muy claro que las unidades XDNA y Ryzen AI terminarán por reemplazar las unidades de función fija de descompresión de datos en las futuras iteraciones de PlayStation y Xbox, las cuales se hacen cuando se da lugar a copias de datos desde la unidad de estado sólido a la RAM. Más que nada para asegurar los sistemas de ingeniería inversa y poder ofrecer sistemas de volcado de datos más eficaces para cada juego. Ventajas que en PC tampoco pasarán desapercibidas.
Ya para terminar, también hay otro tipo de funciones que se pueden acelerar, como es el cálculo de las direcciones de memoria física a acceder y, por lo tanto, funcionar como apoyo a la MMU. Las ventajas potenciales en cuanto al sistema son muchas, otra cosa es que AMD las apoye o no, pero Ryzen AI no se limita solamente a efectos de cámara web y si AMD lo hace bien puede tener una función muy utilizada que le puede dar ventaja en muchas situaciones.