CUDA (Compute Unified Device Architecture)
Arquitectura unificada de dispositivos de cómputo
¿Qué es CUDA?
Introducida por NVIDIA en 2006, CUDA (originalmente, abreviatura de Arquitectura unificada de dispositivos de cómputo) se refiere a dos conceptos:
1. Arquitectura CUDA: la arquitectura de procesamiento masivamente paralelo de las GPU de NVIDIA, con cientos o miles de núcleos.
2. Plataforma de software y modelo de programación CUDA: también creados por NVIDIA, constituyen un tipo de API (interfaz de programación de aplicaciones) que los desarrolladores utilizan para programar estas GPU para procesamiento de propósito general.
¿Por qué necesitas CUDA?
CUDA permite a los desarrolladores acelerar aplicaciones con un uso intensivo de cómputo al aprovechar la capacidad de las GPU para cualquier parte paralelizable de un cálculo. A diferencia de las interfaces de programación de GPU anteriores, como Direct3D y OpenGL, que requerían conocimientos avanzados de programación gráfica, CUDA facilita considerablemente la implementación de programación paralela, ya que es compatible con varios lenguajes de programación conocidos, como C, C++ y Fortran. El desarrollador solo necesita agregar extensiones de estos lenguajes en forma de unas cuantas palabras clave básicas, lo que le proporciona acceso directo al conjunto de instrucciones virtuales de la GPU y a sus elementos de cómputo paralelo para ejecutar kernels de cómputo.
¿Cómo ayuda GIGABYTE?
Los sistemas de servidores R-Series y G-Series de GIGABYTE están optimizados para trabajar con GPGPU (unidades de procesamiento gráfico de propósito general) NVIDIA compatibles con CUDA, como Tesla V100, Tesla T4 o la serie RTX Quadro: una solución de hardware lista para usarse con la interfaz de programación CUDA, que proporciona a los desarrolladores una herramienta potente para procesar cargas de trabajo masivamente paralelas, como las de simulación científica o el entrenamiento de redes neuronales profundas (DNN).