Enlaces recomendados
A continuación hemos recopilado algunos enlaces Web a cursos y documentación que consideramos de especial interés para los programadores CUDA.
-
Documentación de Nvidia, con todo lo necesario para familiarizarte con CUDA:
- El kit de desarrollo de CUDA más actual (CUDA Toolkit). Incluye el compilador, los ejemplos básicos, las librerías, el entorno de desarrollo y las herramientas para depuración y análisis de rendimiento.
- Las guías de iniciación (Getting Started Guides). Proporciona los pasos para la instalación gratuita de CUDA en tu PC, distinguiendo entre usuarios Linux, Mac OS X y Windows.
- Las guías de programación esenciales, con las directrices básicas (CUDA C Programming Guide), recomendaciones para optimizar el código (CUDA C Best Practices Guide), y trucos para mejorar el rendimiento aprovechando las cualidades de las plataformas Kepler de última generación.
- Manuales de referencia (Reference Manuals) para los drivers, las librerías más populares, y el soporte en tiempo de ejecución.
- Códigos de ejemplo para comenzar a compilar, ejecutar, instalar el entorno, etc.
- Manuales para las herramientas (Tool Manuals) como el compilador, el depurador, el comprobador de memoria, el analizador de rendimiento o el entorno Eclipse.
-
Libros:
- Una colección de libros sobre CUDA y GPUs en general, siguiendo las recomendaciones de Nvidia.
- GPU Gems , GPU Gems2 y GPU Gems 3. Técnicas de programación 3D, consejos y trucos sobre cómo se han programado y optimizado un amplio elenco de aplicaciones. Abierto también a OpenGL. Los tres volúmenes están disponibles ya gratuitamente en versión HTML.
-
Cursos y tutoriales:
- CUDA Education. El sitio ideal para obtener material docente si eres profesor o documentación para aprender si eres alumno autodidacta.
- CUDA Training. Los cursos y tutoriales más interesantes a escala mundial.
- Las charlas de la última edición del GTC (Graphics Technology Conference), la conferencia mundial de referencia en nuestro área.
- Una buena recopilación de enlaces a cursos y tutoriales, mantenida por Shane Cook.
-
Herramientas de desarrollo:
- La página Web raiz para los desarrolladores CUDA.
- Las descargas esenciales, clasificadas por sistemas operativos y subversiones.
- NVIDIA Nsight Development Platform. El entorno de desarrollo compatible con Visual Studio y válido para Windows.
-
Herramientas para portar código CUDA a otras plataformas:
-
Otros estándar relativos a CUDA:
- Khronos Group (2009): La organización responsable de OpenGL, OpenCL, WebGL, por nombrar sólo los estándares más relacionados con la GPU y CUDA.
- OpenACC (2011): Una API que describe un conjunto de directivas para proporcionar información al compilador con la que éste pueda automatizar la paralelización de algunas regiones de código sobre GPUs y otros aceleradores.
-
Comunidades de usuarios CUDA:
- GPUcomputing.net: La más completa y vanguardista que conocemos.
- GPGPU.org: La más antigua, habiéndose originado en los tiempos del lenguaje Cg (2003), pero últimamente ha perdido fuelle en favor de la anterior.