A number of topics will be covered in overview lectures given by international experts, and in in-depth technical lectures, followed by hands-on computer lab sessions. The course will consist of about 25 hours of lectures with 15 hours of computer lab sessions.
Introduction to HPC Programming
(1 h 30 lectures)
A short introduction to HPC programming languages. A survey of the aspects of processors, memory hierarchies, switch and networking technologies relevant for the programming of HPC applications.
Parallel Programming I
(5 h 00 lectures, 5 h lab)(+ 5 h 00 lectures in parallel session)
A wide introduction to OpenMP, a programming environnement for parallel machines with shared memory. The practical sessions will give the skills for such a programming in language Fortran 90.
Parallel Programming II
(5 h 00 lectures, 4 h 30 lab)
Message Passing Interface (MPI), a programming environment for parallel computers with distributed memory.
Parallel Algorithms
(3 h 30 lectures)
Basic ideas in parallel algoritnms will be covered in the framework of numerical linear algebra.
A case study in Chemistry or Physics
(3h 30 lectures)
One or two lectures will present a field in Physics or Chemistry where
High Performance Computing is a tool. That study can emerge from efficient
applications with architecture of distributed memory or with shared memory.