Skip links

Cómo un estudiante forjó CUDA con 32 GPUs y Quake 3

En los años 90, Ian Buck, estudiante en Stanford, quiso jugar Quake 3 en una resolución muy alta: 8K. Para lograrlo conectó 32 tarjetas gráficas GeForce. Así descubrió que las GPU podían hacer mucho más que dibujar imágenes. Podían dividir el trabajo y ejecutar muchas tareas a la vez. Con un lenguaje llamado Brook mostró que una GPU podía calcular luces, otra procesar formas y otra guardar datos. El resultado: más potencia sin un solo superordenador.

Nvidia se interesó y contrató a Buck. Junto a John Nickolls crearon CUDA, una tecnología que permite usar las GPU para programas generales, no solo juegos. CUDA ofrece herramientas y librerías que facilitan programar estas tarjetas. Desde 2006 los desarrolladores pueden aprovechar cientos o miles de pequeños núcleos dentro de una GPU para tareas que necesitan repetir muchos cálculos.

Al principio la gente solo quería mejores gráficos. Pero en 2012 Alex Krizhevsky e Ilya Sutskever entrenaron una red neuronal llamada AlexNet usando GPUs y CUDA. Gracias a ellas pudieron procesar enormes cantidades de imágenes y enseñar al sistema a reconocer objetos. Las GPU son especialmente buenas para operaciones matemáticas simples que se repiten muchas veces, algo habitual en el entrenamiento de redes neuronales.

Hoy, la mayoría de los avances en inteligencia artificial usan GPUs y CUDA. Una idea nacida para mejorar un juego se convirtió en la base tecnológica que permite entrenar modelos de lenguaje, reconocimiento y otras aplicaciones de IA.