La inteligencia artificial (IA) está transformando el mundo de la informática, y tanto AMD como Intel están integrando sus propias unidades de procesamiento neuronal (NPU), como ya lo venían haciendo otros SoCs basados en ARM, entre ellos también los propios de Apple. Desde que AMD dio el primer paso en x86, ahora nos encontramos que tenemos Ryzen AI vs Intel NPU, ambas con sus diferencias y similitudes, con rendimientos diferentes, y especificaciones también diferentes.
Por ello, vamos a analizar cuáles son esas diferencias, para conocer mejor estos sistemas.
Índice de contenidos
¿Qué es una NPU?
En el corazón de la inteligencia artificial (IA) se encuentra un poderoso procesador conocido como la NPU (Neural Processing Unit). A diferencia de las CPU de uso general y las GPU centradas en gráficos, las NPU están diseñadas para una tarea específica: ejecutar las complejas operaciones matemáticas detrás de los algoritmos de aprendizaje automático. Actualmente existen chips con NPUs dedicadas usadas como Domain-Specific Accelerators, o también integrados en SoC junto a otras unidades, como sucede en muchos chips ARM para dispositivos móviles, o las propias unidades M-Series de Apple.
Si bien las CPU gestionan las tareas generales de un ordenador y las GPU sobresalen en el procesamiento paralelo para gráficos (aunque como sabes también se usan con propósito general como aceleradores), las NPU llevan la especialización a un nivel completamente nuevo. Están diseñadas específicamente para los cálculos únicos que necesitan las redes neuronales artificiales, y que generalmente son operaciones matemáticas simples como la suma, resta, multiplicación y división, pero con unos datos muy específicos, como los enteros y coma flotante de baja precisión, pero en cantidades muy elevadas.
Mientras que la CPU y la GPU se diseñan para manejar datos muy diversos y con tamaños que suelen ser de 32 o 64-bit, e incluso vectoriales de 128-bit, 256-bit, 512-bit e incluso más, la NPU está especialmente optimizada para:
- Redes neuronales convolucionales (CNNs): se utilizan comúnmente para el reconocimiento de imágenes y el procesamiento del lenguaje natural. Suelen utilizar datos de coma flotante FP32, es decir, de precisión media.
- Redes neuronales recurrentes (RNNs): se utilizan para tareas como el procesamiento del lenguaje natural y la traducción automática. Pueden utilizar datos de coma flotante FP32 o FP64, dependiendo de la precisión requerida.
- Árboles de decisión: Los árboles de decisión son modelos de aprendizaje automático simples que se utilizan para tareas de clasificación y regresión. Suelen utilizar datos enteros para representar los valores de las características. Lo más frecuente es que sean enteros INT8, INT16 e INT32. Es decir, números de 8 a 32 bits de longitud.
¿Sabías que existen las unidades denominadas GPNPU? Se trata de la combinación entre unidades de GPU + NPU, lo cual resulta perfecto para acelerar las cargas de IA. Estas unidades híbridas se están comenzando a ver en algunos sistemas especializados, como el HPC y centros de datos que usan frecuentemente estas cargas. Como sabrás, las GPUs también son buenas en este tipo de cálculos, como se puede ver en los productos NVIDIA H-Series, A-Series, AMD Instinct, etc. Si se combinan ambos, los resultados pueden ser incluso mejores…
Los algoritmos de aprendizaje automático son la columna vertebral de las aplicaciones de IA. Estos algoritmos aprenden de patrones de datos, hacen predicciones y toman decisiones sin una programación explícita. Las NPU juegan un papel crucial en la ejecución eficiente de estos algoritmos. Se encargan de tareas como el entrenamiento (refinar el algoritmo) y la inferencia (hacer predicciones basadas en el modelo entrenado), todo mientras procesan conjuntos de datos masivos.
Hoy en día, las NPU pueden parecer actores secundarios, ayudando con tareas como el desenfoque del fondo en las videollamadas o la generación local de imágenes con IA en su máquina. Sin embargo, a medida que las características de IA se integren más en las aplicaciones cotidianas, las NPU tienen el potencial de convertirse en una parte esencial de nuestros ordenadores del futuro.
TOPS (Tera Operations Per Second) representa la capacidad de una NPU para realizar billones de operaciones por segundo. Esta medida indica la velocidad bruta de procesamiento de la NPU, es decir, la cantidad de cálculos que puede realizar en un segundo. Cuanto mayor sea el valor TOPS, mayor será el rendimiento teórico de la NPU. Se estima que para ejecutar un chatbot como Copilot de Microsoft en local, se necesitaría un rendimiento de 40 TOPS.
NPU en distintos ámbitos
Actualmente se está usando la computación heterogénea para conseguir mejores rendimientos y eficiencia energética. Y esto pasa por utilizar varios tipos de procesadores con sus puntos fuertes dedicándose a lo que mejor saben hacer. A la CPU y GPU, ahora también hay que agregar la NPU para esta tipo de cargas que son relativamente nuevas. Además, agregar una NPU evita que se sobrecargue la CPU o la GPU con este tipo de tareas, y que se dediquen a sus asuntos.
En principio, los dispositivos móviles son los primeros que han estado usando este tipo de unidades NPU, con SoCs como los Apple A-Series, Qualcomm Snapdragon, Samsung Exynos, Mediatek, etc. Pero AMD hizo una apuesta con Zen 4 para traer estas soluciones también al mundo del PC, siendo los AMD Ryzen Zen 4 los primeros en incluir NPU en un sistema x86. Apple también había hecho lo propio con sus M-Series, con el M1, M2, M3, M4, etc., que incluyen una NPU que Apple denomina Neural Engine.
¿Por qué la NPU comenzó en los dispositivos móviles? Pues muy sencillo, ya que estos dispositivos necesitan de la IA para ciertas aplicaciones, como pueden ser los asistentes de reconocimiento de voz, funciones de la cámara para estabilizar vídeo, filtros de corrección para imágenes, efectos bokeh, reconocimiento visual, etc. También muchas Smart TVs comenzaron a usar chips NPU desde hace algunos años, puesto que usan la IA para mejorar la calidad de imagen, escalar contenido antiguo a resoluciones superiores o más nítidas, etc. Otros dispositivos domésticos inteligentes también han venido utilizando estos aceleradores.
Actualmente, con las apps de chatbots, también son importantes en los PCs, y por eso no solo AMD se ha animado a incluirlas, también Intel hizo lo mismo justo después, con Meteor Lake, que incluía también su propia NPU. Y, por supuesto, también los servidores y HPC, dadas las aplicaciones y servicios basados en la nube de IA, también estos equipos han estado usando tanto GPUs especializadas como también NPUs.
TPU no es más que una NPU, aunque Google denomina a las suyas como Tensor Processing Unit. Apple, como dije, lo denomina Neural Engine. Pero sea como sea, es lo mismo…
A medida que la IA se integre cada vez más en nuestras vidas, el papel de las NPU se volverá aún más prominente. Esto significa un cambio hacia un procesamiento de IA optimizado, eficiente y omnipresente. Por tanto, en un futuro próximo, veremos NPU más presentes, y con propiedades muy superiores a las actuales…
¿Qué es AMD Ryzen AI?
AMD Ryzen AI es la marca que agrupa las tecnologías de inteligencia artificial (IA) de AMD para procesadores Ryzen. Esta iniciativa combina hardware y software para ofrecer un rendimiento mejorado en este tipo de tareas. Es decir, se incluye tanto una NPU dedicada llamada AI Stream Engine, y que se basa en la arquitectura XDNA, y también un Ryzen AI Software que proporciona un conjunto de herramientas de software que van desde un driver para aprovechar estas capacidades, hasta software de desarrolladores como AMD ROCm, Ryzen AI SDK, o Ryzen AI Hub…
También te puede interesar conocer los mejores portátiles para IA
¿Qué es Intel NPU?
En el lado de Intel NPU Software tenemos exactamente lo mismo, es decir, una NPU implementada en sus tiles, y también otra parte de software compuesta por driver y biblioteca para la IA. Por tanto, ambos son lo mismo…
También te puede interesar conocer los mejores procesadores del mercado
No olvides dejar tus comentarios…