School / Prep
ENSEIRB-MATMECA
Internal code
EM8AN202
Description
Aims: introduce the basics of parallel programming using message exchange (MPI) and directives (OpenMP). Apply these notions to simple numerical algorithms (Fortran 90 or C++ language).
Course outline:
I- Introduction - Motivation for parallelism. II- Parallel algorithms - Definitions - Physical and logical organization of memory in parallel machines - Notion of independent instructions - Examples of simple implementation of parallel alogorithms - Definition of load - Definition of speed-up and efficiency of a parallel algorithm III- Parallel programming architecture and models - Shared-memory machine - Shared-memory machine Shared memory machine - Distributed memory machine IV- OpenMP programming - General concepts - OpenMp structure - Work sharing - Synchronization V- MPI library - Environment subroutines - Point-to-point communications - Collective communications - Optimizing the number of communications
Conclusion/evaluation: project solving the heat equation using the MPI library and operator parallelism.
Teaching hours
- CIIntegrated courses40h
- TIIndividual work18h
Syllabus
I- Introduction - Motivation for parallelism. II- Parallel algorithms - Definitions - Physical and logical organization of memory in parallel machines - Notion of independent instructions - Examples of simple implementation of parallel alogorithms - Definition of load - Definition of speed-up and efficiency of a parallel algorithm III- Parallel programming architecture and models - Shared memory machine - Distributed memory machine IV- OpenMP programming - General concepts - Structure of OpenMp - Work sharing - Synchronization. Shared memory machine - Distributed memory machine IV- OpenMP programming - General concepts - OpenMp structure - Work sharing - Synchronization V- MPI library - Environment subroutines - Point-to-point communications - Collective communications - Optimizing the number of communications
Conclusion/evaluation: project solving the heat equation using the MPI library and operator parallelism.
Further information
High-Performance Computing for Mechanics
Assessment of knowledge
Initial assessment / Main session - Tests
Type of assessment | Type of test | Duration (in minutes) | Number of tests | Test coefficient | Eliminatory mark in the test | Remarks |
---|---|---|---|---|---|---|
Project | Report | 1 |