Welcome to Techniques of High-Performance Computing#

In this module we learn a number of basic techniques from High-Performance Computing. The module starts with an introduction and overview of parallel computing techniques and programming languages. We then take a deeper dive into Python, the main language for this module. In particular, we will get to learn libraries and programming techniques that will allow us to take full advantage of modern programming architectures in Python.

This will be followed by an introduction to sparse linear algebra for very large linear systems of equations. You will get to know the basics of sparse direct solvers and sparse iterative solvers.

Finally, we will turn to partial differential equations and implement some typical PDEs using the techniques learned in this module.