2016/17, winter semester:
Parallel matrix computations

Charles University, Prague.

The goal of this course is to introduce parallel processing of basic computational cores that can be encountered in mathematical modeling as well as in scientific computing in general. These cores include, for example, basic operations with dense and sparse matrices and parallel preconditioning of Krylov space methods. The course includes also elementary introduction into multigrid (not in the text at this moment) and domain decomposition methods.

Basic course text (2017/2018)

Lectures are based on the extended syllabus Parallel Matrix Computations (Gentle intro into HPC) [pdf]

Lectures 2017/2018

  • 21.02.2018: Introduction into parallel compiutation and HPC.
  • 28.02.2018: Uniprocessor model.
  • 07.03.2018: Vectorization model.
  • 14.03.2018: Multiprocessor model.
  • 21.03.2018: Granularity and problem decompositions.
  • 28.03.2018: Recurrences. Recursive doubling. Cyclic reduction. FFT.
  • 04.04.2018: Parallelizing global reductions and program branches. Parallel software for linear algebra.
  • 11.04.2018: Data decomposition of dense matrices
  • 18.04.2018: Sparse solvers of linear algebraic equations in parallel environment.
  • 25.04.2018: Parallel preconditioning.
  • 02.05.2018: Multigrid.
  • 09.05.2018: Repetition. Self-study.
  • 16.05.2018: Rector day.
  • 23.05.2018: Domain decomposition.

    Additional resources (2017/2018)

  • W.L. Briggs, Van Emden Henson and S.F. McCormick: A Multigrid Tutorial, 2nd edition, SIAM, PA, 2000
  • T.A. Davis, Direct methods for sparse linear systems, SIAM, Philadelphia, PA, 2006.
  • J.J. Dongarra, I.S. Duff, D.C. and H.A. van der Vorst, Numerical Linear Algebra for High-Performance Computers, SIAM, PA, 1998;
  • A. Grama, A. Gupta, G. Karypis, V. Kumar: Introduction to Parallel Computing, 2nd edition, Addison-Wesley, 2003
  • M.A. Olshanskii. E.E. Tyrtyshnikov: Iterative Methods for Linear Systems. Theory and Applications, SIAM, Philadelphia, PA, 2014.
  • T. Rauber, G. Runger: Parallel Programming for Multicore and Cluster Systems, 2nd edition, Springer, Berlin-Heidelberg, 2012.
  • A. Toselli and O. Widlund: Domain Decomposition Methods - Algorithms and Theory, Springer, 2004.