High performance computing for numerical methods and data analysis
L. Grigori INRIA
Objectives of the UE :
The objective of this course is to provide the necessary background for designing efficient parallel algorithms in scientific computing as well as in the analysis of large volumes of data. The operations considered are the most costly steps at the heart of many complex numerical simulations. Parallel computing aspects in the analysis of large data sets will be studied through tensor calculus in high dimension. The course will also give an introduction to the most recent algorithms in large scale numerical linear algebra, an analysis of their numerical stability, associated with a study of their complexity in terms of computation and communication.
Covered topics :
- Introduction to parallel computing: overview of parallel computers and programming languages, introduction to MPI routines that allow to code for parallel machines, approaches to identify parallelism in numerical simulations, parallelism in time and space.
- Parallel algorithms and their numerical stability for operations in numerical linear algebra: orthogonalization methods, least squares problems, resolution of linear systems.
- Parallel computing aspects arising in the analysis of large data sets, going from matrices to tensors in high dimension.
- Introduction to parallel algorithms developed in the recent years on minimizing data movement in a parallel computer, trade-off between parallelisation and stability.