- Lecturer: Ronald Kriemann
- Date: Monday 10.15 - 11.45
- Room: MPI MiS G10
- Language: English
- Target audience: MSc students, PhD students, Postdocs
- Content (Keywords): OpenMP, thread building blocks, message passing, vectorisation
- Prerequisites: Basic knowledge of C/C++
The topic of this lecture are basic programming techniques needed to exploit parallel computing systems (as can also be found at the MPI MIS or at the "Rechenzentrum Garching'' of the MPG ). Starting with simple vectorisation, e.g. SSE, AVX or MIC, the lecture will carry on with techniques for shared memory systems, e.g. OpenMP and task based parallelisation. Finally, distributed computing using message passing will be discussed, needed to use hundreds of computing cores.
The lecture will concentrate on practical aspects of parallel programming, mostly presented in the form of examples, common to scientific computing. Furthermore, basic theoretical aspects, e.g. algorithm complexity, will also be an important topic.
The lecture may be the basis for future (block) courses for people at the MPI MIS using our parallel computing facilities.