This course was postponed to autumn 2020. The exact date will be fixed later.
Python is increasingly used in high-performance computing projects. It can be used either as a high-level interface to existing HPC applications and libraries, as embedded interpreter, or directly.
This course combines lectures and hands-on sessions. We will show how Python can be used on parallel architectures and how to optimize critical parts of the kernel using various tools.
The following topics will be covered:
- Interactive parallel programming with IPython
- Profiling and optimization
- High-performance NumPy
- Just-in-time compilation with numba
- Distributed-memory parallel programming with Python and MPI
- Bindings to other programming languages and HPC libraries
- Interfaces to GPUs
This course is aimed at scientists who wish to explore the productivity gains made possible by Python for HPC.
Prerequisites: Good working knowledge of Python and NumPy
Registrations are only considered until 7 May 2020 due to available space, the maximal number of participants is limited. Applicants will be notified, whether they are accepted for participitation.
Instructors: Dr. Jan Meinke, Dr. Olav Zimmermann, JSC
For any questions concerning the course please send an e-mail to email@example.com