Temario del curso
Introducción
Comprensión de los fundamentos de la metodología de computación heterogénea
¿Por qué computación paralela? Comprensión de la necesidad de la computación paralela
Procesadores multinúcleo: arquitectura y diseño
Introducción a hilos, conceptos básicos de hilos y nociones fundamentales de programación paralela
Comprensión de los fundamentos de los procesos de optimización de software en GPU
OpenMP: un estándar para programación paralela basada en directivas
Ejercicios prácticos / demostración de diversos programas en máquinas multinúcleo
Introducción a la computación con GPU
GPUs para computación paralela
Modelo de programación de GPUs
Ejercicios prácticos / demostración de diversos programas en GPU
SDK, kit de herramientas e instalación del entorno para GPU
Trabajo con diversas bibliotecas
Demostración de GPU y herramientas con programas de ejemplo y OpenACC
Comprensión del modelo de programación CUDA
Aprendizaje de la arquitectura de CUDA
Exploración y configuración de entornos de desarrollo de CUDA
Trabajo con la API de tiempo de ejecución de CUDA
Comprensión del modelo de memoria de CUDA
Exploración de características adicionales de la API de CUDA
Acceso eficiente a memoria global en CUDA: optimización de memoria global
Optimización de transferencias de datos en CUDA mediante secuencias de CUDA (CUDA Streams)
Uso de memoria compartida en CUDA
Comprensión y uso de operaciones e instrucciones atómicas en CUDA
Caso de estudio: procesamiento básico de imágenes digitales con CUDA
Trabajo con programación multi-GPU
Perfilado muestreo avanzado de hardware en NVIDIA / CUDA
Uso de la API de paralelismo dinámico de CUDA para lanzamiento dinámico de núcleos (kernels)
Resumen y conclusión
Requerimientos
- Programación en C
- Linux GCC
Reseñas (1)
La energía y el humor del formador.
Tadeusz Kaluba - Nokia Solutions and Networks Sp. z o.o.
Curso - NVIDIA GPU Programming - Extended
Traducción Automática