Cómputo de alto rendimiento en procesadores gráficos

Clave: 15A7047
No. de horas: 72
Unidades de crédito:  8
Créditos SATCA:  No disponible
Tipo de asignatura: Optativa
Fecha de elaboración: 2015-05-15

Objetivo general:
Proporcionar al estudiante los conocimientos que le permitan desarrollar programas bajo el paradigma de cómputo de alto rendimiento, mismos que sean implementados para ser ejecutados en uno o múltiples unidades de procesamiento gráfico (GPU), ya sea que estos se encuentren físicamente en una misma computadora o mediante la integración de un clúster de computadoras.
Así mismo, el estudiante será capaz de identificar y utilizar las bibliotecas de funciones según el problema a resolver y conocerá los mecanismos de optimización disponibles para desarrollo y ejecución de sus programas.

Temas:
  1. Introducción al cómputo de alto rendimiento.
  2. Modelo de programación CUDA.
  3. “Streams” y concurrencia.
  4. Bibliotecas de funciones en CUDA.
  5. Programación en múltiples GPUs.
  6. Aplicaciones.

Bibliografía:
[1]   Gerassimos Barlas, Multicore and GPU programming: An integrated Approach, Elsevier 2015.
[2]   John Cheng, Max Grossman and Ty McKercher,Professional CUDA C programming, John Wiley & Sons, 2014.
[3]   Shane Cook, CUDA Programming: A developer’sGuide to Parallel Computimg with GPUs, Elsevier, 2013.
[4]   Nicholas Wilt, The CUDA Handbook A comprehensiveGuide to GPU Programming, Addison-Wesley, 2013.
[5]   Nvidia Ed., CUDA C ProgrammingGuide, versión 7.0, Nvidia, 2015.
[6]   Nvdia Ed., CUDA C Best PracticesGuide, version 7.0, Nvidia, 2015.