Programación avanzada en procesadores gráficos

Clave: 12A6506
No. de horas: 72
Unidades de crédito:  8
Créditos SATCA:  No disponible
Tipo de asignatura: Optativa
Fecha de elaboración: 2012-04-10

Objetivo general:

El alumno aprenderá a programar procesadores gráficos en diferentes niveles de programación, haciendo un uso óptimo de su arquitectura. Además, aprenderá a implementar aplicaciones de cómputo de alto desempeño utilizando bibliotecas de funciones de CUDA (Compute Unified Device Architecture).


Temas:
  1. Introducción a CUDA.
  2. Manejo de memoria.
  3. Programación avanzada en CUDA.
  4. Bibliotecas de funciones de CUDA.
  5. Aplicaciones.

Bibliografía:
  1. Shane Cook. CUDA Programming: A Developer's Guide to Parallel Computing with GPUs (Applications of GPU Computing Series), Morgan Kaufmann, 2012.
  2. Rob Farber. CUDA Application Designand Development. Morgan Kaufmann, 2011.
  3. W.M. Hwu. GPU Computing Gems:Esmerald Edition, Applications of GPU Computing Series. Morgan Kaufmann, 2011.
  4. D. B. Kirk. and W.M. Hwu.Programming Massively Parallel Processors: A Hands-on Approach. Applications of GPU Computing Series. Morgan Kaufmann, 2010.
  5. NVIDIA Ed. CUDA C Programming Guide,version 4.2, NVIDIA, 2012.
  6. J. Sanders. and E. Kandrot. CUDA by Example: An introduction to General-Purpose GPU Programming. Addison-Wesley,2010.
  7. Andrew Sheppard. Programming GPUs,O'Reilly Media, 2012.
  8. Yoel Tenne and Chi-Keong Goh (Eds.).Computational Intelligence in Expensive Optimization Problems, Springer, 2010.
  9. Nicholas Wilt, CUDA Handbook: AComprehensive Guide to GPU Programming, Addison-Wesley, 2012.