CUDA | ||
---|---|---|
Información general | ||
Tipo de programa | GPGPU | |
Desarrollador | NVIDIA Corporation | |
Lanzamiento inicial | 23 de junio de 2007 | |
Licencia | Propietaria, Freeware | |
Versiones | ||
Última versión estable | 7.0, 7.5, 8.0, 9.1, 9.1.85, 9.2.88, 10.0.130, 10.1.105, 10.1.243, 10.2.89, 11.0.2, 11.0.3, 11.2.2, 11.5.1, 11.7.0, 12.0, 12.1, 12.2, 12.3.1, 12.5.1 ( 29 de julio de 2021 (3 años, 1 mes y 1 día)) | |
Enlaces | ||
CUDA son las siglas de Compute Unified Device Architecture (Arquitectura Unificada de Dispositivos de Cómputo) que hace referencia a una plataforma de computación en paralelo que incluye un compilador y un conjunto de herramientas de desarrollo creadas por Nvidia que permiten a los programadores usar una variación del lenguaje de programación C (CUDA C) para codificar algoritmos en GPU de Nvidia.
Por medio de wrappers se puede usar Python, Fortran, Julia y Java en vez de C/C++.
Funciona en todas las GPU Nvidia de la serie G8X en adelante, incluyendo GeForce, Quadro, ION y la línea Tesla.[1] Nvidia afirma que los programas desarrollados para la serie GeForce 8 también funcionarán sin modificaciones en todas las futuras tarjetas Nvidia, gracias a la compatibilidad binaria provista por el conjunto de instrucciones PTX (Parallel Thread Execution).[2]
CUDA intenta explotar las ventajas de las GPU frente a las CPU de propósito general utilizando el paralelismo que ofrecen sus múltiples núcleos, que permiten el lanzamiento de un altísimo número de hilos simultáneos. Por ello, si una aplicación está diseñada utilizando numerosos hilos que realizan tareas independientes (que es lo que hacen las GPU al procesar gráficos, su tarea natural), una GPU podrá ofrecer un gran rendimiento en campos que podrían ir desde la biología computacional a la criptografía, por ejemplo.
El primer SDK se publicó en febrero de 2007 en un principio para Windows, Linux, y más adelante en su versión 2.0 para macOS. Actualmente se ofrece para Windows XP/Vista/7/8/10,[3] para Linux 32/64 bits[4] y para macOS.[5]