CUDA (Compute Unified Device Architecture)
Arquitectura unificada de dispositivos de cómputo
¿Qué es CUDA?
Introducida por NVIDIA en 2006, CUDA (originalmente, abreviatura de Compute Unified Device Architecture) 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 desarrollados 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 potencia de las GPU para cualquier parte paralelizable de un cálculo. A diferencia de interfaces anteriores de programación de GPU, 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 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 de NVIDIA compatibles con CUDA (unidades de procesamiento gráfico de propósito general), como Tesla V100, Tesla T4 o la serie RTX Quadro. Se trata de una solución de hardware lista para utilizarse con la interfaz de programación CUDA, que proporciona a los desarrolladores una herramienta potente para procesar cargas de trabajo masivamente paralelas, como las simulaciones científicas o el entrenamiento de redes neuronales profundas (DNN).