HPC
HPC on a single computing node
Description: Parallel computing on a multi-core computer using multithreading, vectorization, and serial optimization. This course presents the generic architecture of modern CPUs (multi-core, SIMD units, cache hierarchy), then efficient memory access management to effectively exploit caches, then loop vectorization to take advantage of SIMD units, and finally multithreading with OpenMP to exploit all the cores of the machine. Aspects of parallel programming and algorithms form the core of the course, accompanied by concepts of performance measurement and analysis.
Evaluation methods: 1h30 written test (can be retaken) and labwork reports (cannot be retaken).
Evaluated skills:
- Development
- Modelling
Course supervisor: Stéphane Vialle
Geode ID: SPM-INF-012
CM:
- Cours d’architecture des CPU multi-coeurs et des caches (1.5 h)
- Cours de compilation optimisée et de vectorisation (1.5 h)
- Cours de mesure et d’analyse de performances (1.5 h)
- Cours d’OpenMP et de bibliothèques BLAS (3.0 h)
- Cours d’algorithmique parallèle (1.5 h)
TD:
- TD d’optimisation sérielle et de vectorisation (1.5 h)
- TD de programmation OpenMP (1.5 h)
TP:
- TP d’optimisation sérielle et de vectorisation (3.0 h)
- TP de programmation OpenMP (3.0 h)
- TP d’algorithmique et de programmation parallèle optimisée (3.0 h)
