Este wirkshop cubre las herramientas y técnicas fundamentales necesarias para acelerar las aplicaciones C/C++ o Fortran para que se ejecuten en GPU masivamente paralelas con OpenACC. Aprenderá a escribir código, configurar la paralelización de código con OpenACC, optimizar los movimientos de memoria entre la CPU y el acelerador de GPU e implementar el workflow que ha aprendido en una nueva tarea: acelerar un código de una ecuación de calor de Laplace completamente funcional, pero solo para CPU para obtener ganancias de rendimiento masivas. Al final del workshop, tendrá acceso a recursos adicionales para crear nuevas aplicaciones aceleradas por GPU por su cuenta.

 

Objetivos de Aprendizaje


Al participar en este workshop, comprenderá las herramientas y técnicas fundamentales para las aplicaciones C/C++ o Fortran de aceleración de GPU con OpenACC y podrá:
  • Perfile y optimice sus aplicaciones solo de CPU para identificar puntos calientes para la aceleración.
  • Utilice las directivas OpenACC para acelerar su código base por GPU.
  • Optimice el movimiento de datos entre la CPU y el acelerador de GPU.

Descargar la ficha técnica del workshop (PDF 80.3 KB)

Esquema del Workshop

Introducción
(15 mins)
Introducción a la Programación Paralela
(50 mins)
Aprenda sobre el paralelismo de forma conceptual, así como cómo expresarlo con OpenACC. Los temas que se cubrirán son los siguientes:
  • Introducción al paralelismo
  • Los objetivos de OpenACC
  • Paralelización básica de código usando OpenACC
Rotura (10 mins)

(50 mins)
Aprenda a crear y compilar un código OpenACC, la importancia de la creación de perfiles y cómo utilizar el generador de perfiles de los Sistemas NVIDIA Nsight. Los temas que se cubrirán son los siguientes:
  • Compilación de código secuencial y OpenACC
  • La importancia de la elaboración de perfiles de código
  • Creación de perfiles de código secuencial y multinúcleo OpenACC
  • Introducción técnica al código utilizado en los módulos introductorios
Rotura (45 mins)
Introducción a las Directivas OpenACC
(50 mins)
Aprenda a paralelizar su código con directivas OpenACC y comprenda las diferencias entre directivas paralelas, de kernel y de loop. Los temas que se cubrirán son los siguientes:
  • La directiva paralela
  • La directiva Kernels
  • La directiva Loop
Rotura (10 mins)
Programación de GPU con OpenACC
(50 mins)
Conozca las diferencias entre las GPU y las CPU multinúcleo, y administre la memoria con la memoria unificada CUDA. Los temas que se cubrirán son los siguientes:
  • Definición de una GPU
  • Gestión básica de datos OpenACC
  • Memoria unificada CUDA
  • Perfilado de aplicaciones de GPU
Rotura (15 mins)
Gestión de datos con OpenACC
(50 mins)
Aprenda a administrar explícitamente el movimiento de datos con las directivas de datos de OpenACC para reducir las transferencias de datos. Los temas que se cubrirán son los siguientes:
  • Cláusulas/directiva de datos OpenACC
  • Región de datos estructurados OpenACC
  • Región de datos no estructurados OpenACC
  • Directiva de actualización de OpenACC
  • Gestión de datos con Estructuras/Clases C/C++
Rotura (10 mins)
Loop Optimizations with OpenACC
(50 mins)
Comprenda los distintos niveles de paralelismo en una GPU y aprenda formas de extraer más paralelismo con OpenACC optimizando los loops en su código. Los temas que se cubrirán son los siguientes:
  • Cláusula Seq/Auto
  • Cláusula independiente
  • Cláusula de reducción
  • Cláusula de colapso
  • Cláusula de mosaico
  • Gang, Worker, Vector
Rotura (10 mins)
Revisión Final
(60 mins)
  • Revise los aprendizajes clave y responda preguntas.
  • Complete la evaluación y obtenga un certificado.
  • Complete la encuesta del workshop.
Próximos Pasos Continúe aprendiendo con estas capacitaciones de DLI:
 

Detalles del Workshop

Duración: 8 horas

Precio: Contáctenos para conocer los precios.

Requisitos previos:

  • Competencia básica de C/C++ o Fortran, incluida la familiaridad con tipos de variables, bucles, declaraciones condicionales, funciones y manipulaciones de matrices.
  • No se asume ningún conocimiento previo de programación de GPU.

Herramientas, bibliotecas y frameworks: NVIDIA® Nsight, OpenACC

Tipo de Evaluación:

  • Basado en código

Certificado: al completar con éxito la evaluación, los participantes recibirán un certificado DLI de NVIDIA para reconocer su competencia en la materia y respaldar el crecimiento de su carrera profesional.

Requisitos de Hardware: Computadora de escritorio o portátil capaz de ejecutar la última versión de Chrome o Firefox. A cada participante se le proporcionará acceso exclusivo a una workstation en el cloud totalmente configurada y acelerada por GPU.

Idiomas: |nglés

Si su organización está interesada en impulsar y desarrollar habilidades clave en inteligencia artificial, ciencia de datos acelerada o computación acelerada, puede solicitar capacitación dirigida por un instructor de NVIDIA DLI.

Questions?