Parallel Programming Workshop

  • Supercomputación
  • Lunes, 14 Octubre 2024 - Viernes, 18 Octubre 2024 17:30

Los objetivos de este curso son comprender los conceptos fundamentales que sustentan los modelos de programación de paso de mensajes y de memoria compartida. El curso cubre los dos modelos de programación más utilizados: MPI para los entornos de memoria distribuida, y OpenMP para las arquitecturas de memoria compartida. El curso también presenta las principales herramientas desarrolladas en el BSC para obtener información y analizar la ejecución de aplicaciones paralelas, Paraver y Extrae.

También presenta la herramienta Parallware Assistant, que es capaz de paralelizar automáticamente un gran número de estructuras de programa, y proporcionar pistas al programador con respecto a cómo cambiar el código para mejorar la paralelización. Aborda alternativas de depuración, incluido el uso de GDB y Totalview. También se considera el uso de OpenMP en conjunción con MPI para explotar mejor las capacidades de memoria compartida de los actuales nodos de computación en arquitecturas clusterizadas. A lo largo del curso se utilizará Paraver como herramienta para comprender el comportamiento y rendimiento de los códigos paralelizados. El curso se imparte mediante clases formales y sesiones prácticas/de programación para reforzar los conceptos clave y configurar el entorno de compilación/ejecución.

Objectiu de l'acte

Los alumnos que finalicen este curso serán capaces de desarrollar benchmarks y aplicaciones con los modelos de programación MPI, OpenMP y mixto MPI/OpenMP, así como analizar su ejecución y ajustar su comportamiento en arquitecturas paralelas.

 

T'interessa si ets...

  • Requisitos previos: Programación en Fortran, C o C++. Todos los ejemplos del curso se harán en C. Los asistentes pueden traer sus propias aplicaciones y trabajar con ellas durante el curso para su paralelización y análisis. Requisitos de software: Cliente SSH (para conectar sistemas HPC), Servidor X (que permite herramientas visuales remotas).