This course will present the state of the art in the development of parallel direct methods for sparse linear systems. Some of these methods are being implemented as black box solvers; the corresponding toolkits will be experimented in dedicated hand-on sessions.
The course will also present recent work on hybrid (direct / iterative) methods that better exploit the two level structure of current parallel architectures.
Direct solvers:
Learning outcomes
Participants will understand the main features of the main direct and iterative methofd, their tradeoffs and when using them is most advisable.
They will also gain practical experience with some state of the art solvers
Prerequisites
Basic knowledge of linear algebra and parallel algorithms
Knowledge of a programming language (Fortran, C, C++)
Use of Linux (Unix)
The course will also present recent work on hybrid (direct / iterative) methods that better exploit the two level structure of current parallel architectures.
Direct solvers:
- Dense matrices (serial and parallel, 1D and 2D distributions)
- Sparse matrices (graph model, renumbering, elimination graph, symbolic and numeric factorizations)
- Parallel methods: data distribution, scheduling of computations and communications
- Hands-on with the MUMPS and Pastix solvers
- Basics on Krylov subspace methods
- Basics on algebraic domain decomposition methods (Schur/Schwarz)
- Hybrid direct/iterative methods: motivation and description of methods
- Hierarchical parallel implementation and scalability issues
Learning outcomes
Participants will understand the main features of the main direct and iterative methofd, their tradeoffs and when using them is most advisable.
They will also gain practical experience with some state of the art solvers
Prerequisites
Basic knowledge of linear algebra and parallel algorithms
Knowledge of a programming language (Fortran, C, C++)
Use of Linux (Unix)