Las GPU de Nvidia han recorrido un largo camino, no solo en términos de rendimiento de juegos, sino también en otras aplicaciones, especialmente inteligencia artificial y aprendizaje automático. Los dos factores principales responsables del rendimiento de la GPU de Nvidia son los núcleos CUDA y Tensor presentes en casi todas las GPU Nvidia modernas que puede comprar.
Pero, ¿qué hacen exactamente estos núcleos, y si ambos se usan en aplicaciones de inteligencia artificial y aprendizaje automático, en qué se diferencian?
¿Qué son los núcleos CUDA y para qué se utilizan?
CUDA significa Compute Unified Device Architecture, que no explica mucho su presencia en una GPU. Estos núcleos se introdujeron en la línea de GPU de Nvidia en la arquitectura Maxwell de 2014 y se especializan en procesamiento paralelo.
Son bastante similares a los núcleos de CPU en cuanto a su funcionamiento, pero son mejores para manejar ciertos tareas, incluidos hashes criptográficos, motores de física, proyectos relacionados con la ciencia de datos e incluso juegos desarrollo.
Si bien ya hemos cubierto cómo los núcleos CUDA afectan el rendimiento de juego de su PC, son igual de útiles para procesar números. Si bien incluso las CPU más potentes tienen núcleos de dos dígitos, las GPU Nvidia vienen con varios miles de núcleos CUDA, lo que las hace mucho más rápidas en cargas de trabajo numéricas. Además, como hacen estos cálculos en paralelo, obtienes velocidades mucho más rápidas con los núcleos CUDA.
Los núcleos CUDA son más rápidos que los núcleos de CPU normales cuando se trata de procesar números, pero aún así no son la solución ideal. Eso es porque nunca fueron pensados para ser usados de esa manera. Los núcleos CUDA se diseñaron específicamente para el procesamiento gráfico y para hacer que las GPU Nvidia sean más capaces en el rendimiento de los juegos.
¿Qué son los núcleos tensoriales y para qué se utilizan?
A medida que las GPU comenzaron a usarse para cargas de trabajo de inteligencia artificial y aprendizaje automático, Nvidia introdujo núcleos Tensor en la arquitectura Volta para las GPU de su centro de datos a partir de 2017.
Sin embargo, se necesitó hasta la arquitectura Nvidia Turing (GPU de la serie RTX 20) para que estos núcleos llegaran a las GPU de consumo. Recordar que si bien las tarjetas de la serie GTX 16 también se basan en la arquitectura de Turing, no incluyen trazado de rayos ni Tensor núcleos
Si bien los núcleos CUDA eran adecuados en el mejor de los casos para cargas de trabajo computacionales, los núcleos Tensor subieron la apuesta al ser significativamente más rápidos. Mientras que los núcleos CUDA solo pueden realizar una operación por ciclo de reloj, los núcleos Tensor pueden manejar múltiples operaciones, lo que les brinda un impulso de rendimiento increíble. Fundamentalmente, todo lo que hacen los núcleos Tensor es aumentar la velocidad de multiplicación de matrices.
Este aumento en la velocidad computacional tiene el costo de la precisión, ya que los núcleos CUDA son significativamente más precisos. Dicho esto, cuando se trata de entrenar modelos de aprendizaje automático, los núcleos Tensor son mucho más efectivos en términos de velocidad computacional y costo general; por lo tanto, la pérdida de precisión a menudo se desprecia.
¿Cómo afectan los núcleos Tensor y CUDA al rendimiento de la GPU?
Como probablemente ya pueda adivinar, si bien los núcleos CUDA y Tensor pueden manejar las mismas cargas de trabajo, ambos son núcleos especializados para la representación gráfica y las cargas de trabajo numéricas, respectivamente.
Esto significa que dependiendo del usuario al que se dirija una GPU en particular, tendrá una cantidad diferente de núcleos. Por ejemplo, si consideramos la RTX 4090, la última y mejor GPU para juegos orientada al consumidor de Nvidia, obtendrá muchos más núcleos CUDA que núcleos Tensor. 16,384 núcleos CUDA a 512 núcleos Tensor, para ser específicos.
En comparación, la GPU Nvidia L40 para centros de datos, basada en la misma arquitectura Ada Lovelace que la RTX 4090, tiene 18 176 núcleos CUDA y 568 núcleos Tensor. Puede que esto no parezca una gran diferencia, pero puede afectar enormemente el rendimiento de estas GPU.
En términos de rendimiento teórico, el L40 tiene 90,52 TFlops de rendimiento FP16 y FP32, así como 1414 GFlops de rendimiento FP64. Este es un aumento de rendimiento masivo en comparación con los 82,58 TFlops de rendimiento de FP16 y FP32 del RTX 4090 y los 1290 GFlops de rendimiento de FP64.
A menos que conozca bien los números de rendimiento numérico de la GPU, es posible que las cifras de rendimiento de punto flotante de la GPU de Nvidia anteriores no signifiquen mucho para usted. Sin embargo, en resumen, muestran que el L40 es mucho más rápido que el RTX 4090 cuando se trata de cálculos numéricos, los necesarios para cargas de trabajo basadas en inteligencia artificial y aprendizaje automático.
La mejora del rendimiento se vuelve aún más impresionante cuando se considera el consumo de energía de las dos GPU. El RTX 4090 tiene un TGP clasificado (no debe confundirse con TDP, hay una pequeña diferencia) de 450 W, mientras que el L40 tiene una potencia nominal de solo 300 W.
Ambas GPU ejecutarán juegos y entrenarán su modelo de aprendizaje automático sin problemas. Sin embargo, el RTX 4090 será mejor para ejecutar juegos y el L40 será mejor para entrenar modelos de aprendizaje automático.
Núcleos CUDA vs. Núcleos tensoriales: ¿cuál es más importante?
Ambos núcleos son igualmente importantes, independientemente de si está comprando su GPU para juegos o colocándola en un bastidor de centro de datos. Las GPU para juegos orientadas al consumidor de Nvidia utilizan un montón de características de IA (sobre todo DLSS), y tener núcleos Tensor integrados puede resultar útil.
En cuanto a las GPU del centro de datos, los núcleos CUDA y Tensor funcionan en conjunto la mayor parte del tiempo de todos modos, por lo que obtendrá ambos independientemente de la GPU que elija. En lugar de centrarse en un tipo específico de núcleo en su GPU, debe centrarse más en lo que hace la tarjeta gráfica en su conjunto y en el tipo de usuario al que está destinada.
Los núcleos CUDA se especializan en el manejo de cargas de trabajo gráficas, mientras que los núcleos Tensor son mejores en los numéricos. Trabajan juntos y son intercambiables hasta cierto punto, pero manejan sus propias especializaciones, razón por la cual existen en primer lugar.
Diferentes GPU se especializan en diferentes aspectos. El RTX 4090 aplastará fácilmente cualquier juego que le lances, mientras que el RTX 4060 solo puede manejar juegos de 1080p. Si no está jugando con su GPU y solo la necesita para calcular números o entrenar redes neuronales, una GPU de centro de datos de la serie A como la A100 o incluso la L40 es su mejor opción.
Tus núcleos de GPU importan
Más núcleos de GPU le brindarán un mejor rendimiento general, ya que su GPU será más versátil y tendrá recursos dedicados para manejar diferentes tareas. Sin embargo, conseguir a ciegas una GPU con el mayor número de núcleos no es la mejor decisión. Tómese un momento para considerar cuidadosamente su caso de uso, eche un vistazo a las capacidades de la GPU en su conjunto y luego haga su elección.