Temario del curso

Introducción

  • ¿Qué es la programación de GPU?
  • ¿Por qué usar CUDA con Python?
  • Conceptos clave: Hilos, Bloques, Cuadrículas

Visión general de las características y arquitectura de CUDA

  • Comparación entre la arquitectura GPU y CPU
  • Comprensión de SIMT (Single Instruction, Multiple Threads)
  • Modelo de programación CUDA

Ajuste del entorno de desarrollo

  • Instalación del Toolkit y controladores CUDA
  • Instalación de Python y Numba
  • Ajuste y verificación del entorno

Fundamentos de la programación paralela

  • Introducción a la ejecución paralela
  • Comprensión de hilos y jerarquías de hilos
  • Trabajo con warps y sincronización

Trabajo con el compilador Numba

  • Introducción a Numba
  • Escritura de kernels CUDA con Numba
  • Comprensión de los decoradores @cuda.jit

Construcción de un kernel personalizado CUDA

  • Escritura y lanzamiento de un kernel básico
  • Uso de hilos para operaciones elemento a elemento
  • Gestión de las dimensiones de cuadrícula y bloques

Gestión de memoria

  • Tipos de memoria de GPU (global, compartida, local, constante)
  • Transferencia de memoria entre host y dispositivo
  • Optimización del uso de memoria y evitación de cuellos de botella

Temas avanzados en la aceleración de GPU

  • Memoria compartida y sincronización
  • Uso de flujos para ejecución asíncrona
  • Bases de programación multi-GPU

Conversión de aplicaciones basadas en CPU a GPU

  • Ajuste del código de CPU
  • Identificación de secciones paralelizables
  • Pasaje de lógica a kernels CUDA

Troubleshooting

  • Depuración de aplicaciones CUDA
  • Errores comunes y cómo resolverlos
  • Herramientas y técnicas para pruebas y validación

Resumen y próximos pasos

  • Revisión de conceptos clave
  • Buenas prácticas en la programación de GPU
  • Recursos para el aprendizaje continuo

Requerimientos

  • Experiencia en programación con Python
  • Experiencia con NumPy (ndarrays, ufuncs, etc.)

Público

  • Desarrolladores
 14 horas

Número de participantes


Precio por participante

Testimonios (1)

Próximos cursos

Categorías Relacionadas