Solicitar información

Temario del curso

Computación en GPU y arquitectura CUDA

  • Diferencias entre la arquitectura de CPUs y GPUs
  • Modelo de multiprocesadores de flujo en GPUs NVIDIA
  • Introducción al modelo de programación CUDA
  • Computación heterogénea y el paradigma host-device

Configuración del entorno de desarrollo CUDA

  • Instalación del kit de herramientas CUDA 13.x
  • Uso del compilador NVCC y flujo de construcción de proyectos
  • Verificación del entorno mediante consultas al dispositivo
  • Integración con IDEs y herramientas adicionales para el desarrollo

Escritura y lanzamiento de kernels CUDA

  • Sintaxis y modificadores aplicables a las funciones kernel
  • Configuración del lanzamiento y ejecución de los kernels
  • Ejemplos prácticos como la suma vectorial y patrones básicos de paralelismo de datos
  • Macros para comprobar errores durante la ejecución en CUDA

Jerarquía de hilos y modelo de ejecución en CUDA

  • Organización lógica en grillas, bloques e hilos individuales
  • Cálculo del índice de cada hilo mediante identificadores globales
  • Ejecución por warps y modelo SIMT empleado en CUDA
  • Factor de ocupación y optimización del uso de recursos GPU

Arquitectura y gestión de la memoria en GPUs

  • Tipos de memoria: global, compartida, constante y registros
  • Asignación y liberación de memoria en el dispositivo GPU
  • Transferencias de datos entre la CPU y la GPU
  • Utilización de la memoria compartida para facilitar la colaboración entre hilos dentro de un mismo bloque

Memoria unificada y migración automática de datos

  • Modelo de memoria unificado y asignaciones gestionadas por el sistema
  • Migración automática de páginas y mecanismos de paginación bajo demanda
  • Prefetching asíncrono mediante la función cudaMemPrefetchAsync
  • Sugerencias de optimización basadas en patrones de acceso a la memoria

Análisis del sistema con Nsight Systems

  • Interpretación detallada de los cronogramas generados por Nsight Systems
  • Detección de puntos de sincronización entre CPU y GPU
  • Representación visual del funcionamiento de kernels y flujos de transferencia de datos
  • Interpretación coherente de los indicadores de rendimiento a nivel global del sistema

Optimización de kernels mediante Nsight Compute

  • Análisis interactivo detallado de kernels gracias a Nsight Compute
  • Evaluación del rendimiento en términos de flujo de memoria y ancho de banda disponible
  • Cálculo preciso de la utilización computacional y estadísticas sobre el estado de los warps
  • Lineamientos claros para realizar mejoras efectivas en el código según resultados del análisis

Flujos concurrentes y operaciones asíncronas

  • Conceptos básicos sobre los flujos CUDA y el flujo predeterminado por defecto
  • Solapamiento eficiente de la ejecución de cálculos con transferencias simultáneas de datos a través del bus GPU-CPU
  • Gestión adecuada de sincronizaciones mediante eventos definidos dentro de los flujos CUDA
  • Diseño racional de pipelines informáticos que empleen múltiples flujos simultáneamente

Manejo de errores y herramientas de depuración<

  • Interpretación adecuada de códigos de error provenientes de la API de CUDA junto con estrategias efectivas para su corrección
  • Utilización del módulo Compute-sanitizer dirigido al control exhaustivo de accesos indebidos a zonas reservadas en memoria<
  • Aplicación y uso práctico de cuda-gdb para depurar correctamente los kernels implementados durante la etapa de desarrollo
  • Implementación estratégica de aserciones internas y mecanismos de detección rápida de errores sincronizados<

Metodología iterativa para la optimización basada en análisis exhaustivo<

  • Aplicación progresiva y reiterativa de ciclos de analítica detallada al hilo de trabajo desarrollado<
  • Identificación y ordenamiento según prioridades críticas respecto a los cuellos de botella detectados en cada evaluación <
  • Diseño e implementación de pruebas precisas destinadas al seguimiento continuo de las modificaciones aplicadas a fin de detectar regresiones indeseadas<
  • Documentación adecuada y sistematizada acerca de cada decisión adoptada como consecuencia de los análisis efectuados <

Desarrollo integral y ejecución práctica de un proyecto con aceleración GPU<

  • Diseño completo e integrado para una solución realmente optimizada gracias al uso intensivo de capacidades avanzadas ofrecidas por la plataforma CUDA <
  • Integración continuada de ciclos iterativos de análisis como parte fundamental durante el proceso completo de creación y pruebas <
  • Ejecución obligatoria y detallada de evaluaciones comparativas para obtener mediciones relevantes del incremento logrado en rendimiento <
  • Toma adecuada de consideraciones operativas respecto a la implementación definitiva de la aplicación desarrollada dentro de entornos productivos<

Requerimientos

  • Conocimientos básicos de programación en C/C++: tipos de variables, bucles, estructuras condicionales, funciones y manipulación de arreglos.
  • Dominio del proceso de compilación y ejecución de programas desde la línea de comandos.
  • No se requiere experiencia previa en programación con GPUs ni en CUDA.

Público objetivo

  • Desarrolladores e ingenieros de software que buscan acelerar aplicaciones C/C++ mediante el uso de GPUs.
  • Investigadores científicos y profesionales del HPC que estén migrando desde entornos exclusivamente basados en CPU a arquitecturas computacionales heterogéneas.
  • Líderes técnicos encargados de evaluar el uso de la aceleración por GPU en cargas de trabajo productivas.
 8 Horas

Formación Corporativa a Medida

Soluciones de formación diseñadas exclusivamente para empresas.

  • Contenido personalizado: Adaptamos el temario y los ejercicios prácticos a los objetivos y necesidades reales del proyecto.
  • Calendario flexible: Fechas y horarios adaptados a la agenda de su equipo.
  • Modalidad: Online (en directo), In-company (en sus oficinas) o Híbrida.
Inversión

Precio por grupo privado (formación online) desde 2900 € + IVA*

Contáctenos para obtener un presupuesto exacto y conocer nuestras promociones actuales

Próximos cursos

Categorías Relacionadas